① c語言程序輸出
程序中寫的很明顯,作用就是只輸出數字,for循環遍歷字元串,對每個字元判斷是不是在數字的ascii范圍內,在的話才輸出,所以只能輸出數字
② c語言輸出格式%*s
c語言輸出格式%*s,標識形參佔位。
*在printf中使用,表示用後面的形參替代的位置,實現動態格式輸出。例如:printf("%*s",10,s);意思是輸出字元串s,但至少佔10個位置,不足的在字元串s左邊補空格,這里等同於printf("%10s",s)。
(2)輸出C語言擴展閱讀:
C語言輸出格式大全:
格式佔位符(%)可以以下字母配合使用用來表示某些特定的輸入輸出。
%a,%A 讀入一個浮點值(僅C99有效)
%c 讀入一個字元
%d 讀入十進制整數
%i 讀入十進制,八進制,十六進制整數
%o 讀入八進制整數
%x,%X 讀入十六進制整數
%s 讀入一個字元串,遇空格、製表符或換行符結束。
%f,%F,%e,%E,%g,%G 用來輸入實數,可以用小數形式或指數形式輸入。
%p 讀入一個指針
%u 讀入一個無符號十進制整數
%n 至此已讀入值的等價字元數
%[] 掃描字元集合
%% 讀%符號
③ C語言輸入輸出語句
c語言輸入輸出函數
C語言輸入輸出函數有很多,標准
I/O
函數中包含了如下幾個常用的函數:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf
等.
int scanf(const char *format, arg_list)
scanf
主要從標准輸入流中獲取參數值,format為指定的參數格式及參數類型,如
scanf("%s,%d",str,icount);
它要求在標准輸入流中輸入類似"son of bitch,1000"這樣的字元串,同時程序會將"son of bitch"給str,1000給icount. scanf函數的返回值為int值,即成功賦值的個數,在上例中如果函數調用成功,則會返回2,所以我們在寫程序時,可以通過語句
if(scanf("%s,%d",str,icount) != 2){...}
來判斷用戶輸入是否正確.
int printf(const char *format, arg_list)
printf
主要是將格式化字元串輸出到標准輸出流中,在stdio.h頭文件中定義了標準的輸入和輸出,分別是stdin,stdout. arg_list可以是變數名,也可以是表達式,但最終都會以值的形式填充進
format中. int getc(FILE *fp) getc主要是從文件中讀出一個字元.常用的判斷文件是否讀取結束的語句為:(ch = getc(fp)) != EOF.EOF為文件結束標志, 定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當fp
為stdin 時,getc(stdin)就等同於getchar()了. int putc(int ch,FILE *fp) putc主要是把符ch寫到文件fp中去.如果fp為stdout,則putc就等同於putchar()了.
int getchar(void)
getchar
主要是從標准輸入流讀取一個字元.默認的標准輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字元時又涉及到緩沖的問題,所以並不是在屏幕中敲上一個字元程序就會運行,一般是通過在屏幕上敲上回車鍵,然後將回車前的字元串放在緩沖區中,getchar就是在緩沖區一個一個的讀字元.當然也可以在while循環中指定終止字元,
如下面的語句:
while ((c = getchar()) != '#')
這是以#來結束的.
int putchar(int ch)
putchar(ch)
主要是把字元ch寫到標准流stdout中去.
char * gets(char *str)
gets
主要是從標准輸入流讀取字元串並回顯,讀到換行符時退出,並會將換行符省去. int puts(char *str)
puts
主要是把字元串str寫到標准流stdout中去,並會在輸出到最後時添加一個換行符.
char *fgets(char *str, int num, FILE *fp)
str
是存放讀入的字元數組指針,num是最大允許的讀入字元數,fp是文件指針.fgets的功能是
讀一行字元,該行的字元數不大於num-1.因為fgets
函數會在末尾加上一個空字元以構成一個字元串.
另外
fgets
在讀取
到換行符後不會將其省略
.
int fputs(char *str, file *fp)
fputs
將
str
寫入
fp.fputs
與
puts
的不同之處是
fputs
在列印時並不添加換行符
.
int fgetc(FILE *fp)
fgetc
從
fp
的當前位置讀取一個字元
.
int fputc(int ch, file *fp)
fputc
是將
ch
寫入
fp
當前指定位置
.
int fscanf(FILE *fp, char *format,...)
fscanf
按照指定格式從文件中出讀出數據
,
並賦值到參數列表中
.
int fprintf(FILE *fp, char *format,...)
fprintf
將格式化數據寫入流式文件中
.
http://www.cnblogs.com/yaoleiroyal/archive/
2008
/
04
/
03
/1135819.html
字元串輸入:
gets()
char name[20];
printf("Hi,What's your name?\n");
gets(name);
printf("Nice name %s",name);
它使用一個地址把字元串賦予
name
。
char name[20];
char *p;
printf("\nEn,What's your name?\n");
p=gets(name);
printf("%s?Oh,Nice name %s\n",name,p);
get()
的代碼使用
return
關鍵字返回字元串的地址,程序把這個地址分配給指針
p
。
fgets()
fgets()
是為文件
I/O
而設計的,處理鍵盤輸入不是特別方便。
printf("\nHi,What's your name?\n");
p=fgets(name,20,stdin);
printf("%s?Oh,Nice name %s\n",name,p);
*fgets()
的第二個參數說明最大讀入的字元數。如果這個參數值為
n
,那麼
fgets()
就會讀取最
多
n-1
個字元或讀完一個換行符為止。兩個條件滿足任意一個結束。
*fgets()
讀取到換行符,就會把它存到字元串里,而不是想
gets()
那樣丟棄它。
*fgets()
的第三個參數說明讀哪個文件。
從鍵盤上讀數據時,
可以使用
stdin(
代表
standard input)
作為參數。
scanf()
char name1[11], name2[11];
int count;
printf("\nPlease write down 2 names...\n");
count=scanf("%5s %6s",name1,name2);
printf("\nname1:%s\nname2:%s",name1,name2);
scanf()
允許指定輸入字元串長度等格式。上面的程序如果輸入
"liujiajia
liujiajia",
程序將輸出
"name1:liuji
name2:liujia";
字元串輸出:
puts()
char str[15]="hello world";
const char *str2="HELLO WORLD";
puts(str);
puts(str2);
puts(&str[5]);
puts(str2+2);
puts()
顯示字元串時自動在其後添加一個換行符。
puts(&str[5]);
將輸出從
str
的第六個元素開始到字元串結束。
puts(str2+2);
將輸出從
str2
的地址向後移動兩個字元開始到字元串結束。
fputs()
fputs(str,stdout);
fputs(str2,stdout);
fputs(&str[5],stdout);
fputs(str2+2,stdout);
*fputs()
第二個參數表示要寫的文件。可以使用
stdout(
代表
standard output)
作為參數。
*fputs()
不自動輸出換行符,這與
puts()
不太相同。
④ C語言中輸出printf(「%%%%」)
輸出8個字元寬度的空間, 就相當於你在編程的時候按一下「Table」鍵,使游標以8個字元為基準進行跳躍,跳到下一個TAB位置。
它們在雙引號或定界符表示的字元串中有效,在單引號表示的字元串中無效。 表示鍵盤上的「TAB」鍵。
,是一種計算機語言,意思是讓所有的數據都緊跟在製表符後面。換碼符' ',表示水平製表位(horizontal tab),它的作用是將游標移到最接近8的倍數的位置,使得後面的輸入從此開始。換句話說,讓所有的數據都緊跟在製表符後面輸出。
(4)輸出C語言擴展閱讀:
轉義字元作用
1、使用轉義字元來表示字元集中定義的字元,比如ASCll裡面的控制字元及回車換行等字元,這些字元都沒有現成的文字代號。所以只能用轉義字元來表示 。
2、某一些特定的字元在編輯語言中被定義為特殊用途的字元。這些字元由於被定義為特殊用途,它們失去了原有的意義。比如說Html中,<被HTML定義為標簽的開始,所以當我們轉入<時,HTML就會把它當作為開始,而不是當作一個<來看待。
網路-
⑤ c語言中有哪些輸出輸入語句
C語言本身不提供輸入輸出語句,它的輸入與輸出是由C語言函數庫中的一批「標准輸入輸出函數」來完成的。在調用「標准輸入輸出函數」時,要用到以「stdio.h」為名的頭文件,並以「#i nclude <stdio.h>」的方式放在源程序的開頭處。而文件名後綴「.h」是「head」的縮寫,「#i nclude」是預編譯命令。(當只調用「printf」函數和「scanf」函數時可以省略「#i nclude <stdio.h>」。 1字元輸入函數getchar()[getchar函數的功能和使用方法][功能]:從終端(或系統隱含指定的輸入設備)(一般指鍵盤)輸入一個字元,它的返回值為接受到的字元,也可以是一個整型數,即是該字元的ASCII碼。[一般格式]:getchar()[注意]:1、 getchar()函數只能接受一個字元;2、 要調用getchar()函數應在程序的開頭處加上預編譯命令;3、 getchar是一個無參函數,但後面的空括弧不能省; 2字元輸出函數putchar()[putchar函數的功能和使用方法][功能] putchar的作用是向終端(一般指顯示器)輸出一個字元[一般格式]:putchar(參數),「參數」通常為字元型變數、字元碼(整型變數)或字元本身。[注意]:(1)putchar(ch)函數只能輸出一個字元;參數如果是整型數,則輸出ASCII值為該數的字元。(2)要調用putchar(ch)函數也應在程序的開頭處加上預編譯命令#i nclude <stdio.h>;(3)putchar(ch)函數還能輸出一些控制字元;也能輸出其它轉義字元。例:輸入一行字元,計算該行字元中包含的字母,數字,空格及其它字元的個數。#i nclude<stdio.h>main(){ int letter=0,figure=0,blank=0,other=0; char c; printf("please input a string:"); while((c=getchar())!='\n')// 讀入字元,遇到回車時停止讀入 { if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))//如果讀入的為字母 letter++; else if(c>='1'&&c<='9')//如果讀入的為數字 figure++; else if(c==' ')//如果讀入的為空格 blank++; else //如果讀入的為其它字元 other++; } printf("The number of letter is %d\n",letter); printf("The number of figure is %d\n",figure); printf("The number of blank is %d\n",blank); printf("The number of other is %d\n",other);}
⑥ c語言中百分號%怎麼輸出
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
⑦ c語言 如何輸出
%是轉義字元如%d %lf等,你要輸出%就雙寫%就行了
如printf("%%0.15*x");
同理要輸出轉義字元'\'也要雙寫\
⑧ C語言的輸出格式
截圖是在C-Free5.0環境下的運行結果。因為b是float類型,在%.2f格式下輸出的是0.50,而a是int類型,小數部分被截除,整數部分為零,所以輸出為0。要說明的是,對於賦值運算符=,先進行運算符「=「右邊部分的運算,然後將表達式的運算結果賦給「=」左邊的變數。
⑨ 用c語言輸出X個#,如何用printf編寫
#include<math.h>
#include<stdio.h>
main()
{
int
i,x;
printf("請輸入x:\n");
scanf("%d",&x);
printf("\n");
for(i=0;i<x;i++)
printf("#");
printf("\n");
}
使用這個程序,你輸入x的值,就可以輸出x個#了。