c語言輸入語句
Ⅰ c語言正確的輸入語句
首先說一下, 這道題目的答案是:C
接下來我們了解下scanf (...) 函數
函數原型 :
intscanf(constchar*restrictformat,...);
1、函數 scanf() 是從標准輸入流stdin (標准輸入設備,一般指向鍵盤)中讀內容的通用子程序,可以說明的格式讀入多個字元,並保存在對應地址的變數中。
2、函數的第一個參數是格式字元串,它指定了輸入的格式,並按照格式說明符解析輸入對應位置的信息並存儲於可變參數列表中對應的指針所指位置。每一個指針要求非空,並且與字元串中的格式符一一順次對應。
返回值 :
scanf函數返回成功讀入的數據項數,讀入數據時遇到了「文件結束」則返回EOF。
如:scanf("%d%d",&a,&b);
1、函數返回值為int型。如果a和b都被成功讀入,那麼scanf的返回值就是2;
2、如果只有a被成功讀入,返回值為1;
3、如果a和b都未被成功讀入,返回值為0;
4、如果遇到錯誤或遇到end of file,返回值為EOF。end of file為Ctrl+z 或者Ctrl+d。
由上面的知識點可以,輸入位置的變數應該是要寫成指針類型的(表示取地址)。
int 類型取址是用的是&n, 而char c[5]是數組類型,其地址本身就是 c(同時也是數組名)。
如果以上對你有幫助,請採納一下, 謝謝。
Ⅱ c語言中有那些輸出輸入語句
putchar(輸出字元)getchar(輸入字元)printf(格式輸出)scanf(格式輸入)puts(輸出字元串)gets(輸入字元串)
%d按十進制整形數據的實際長度輸出
%md。m為指定的輸出欄位的寬度。如果位數小於m,則左邊補以空格,大於m,則實際輸出。例:printf("%4d,%4d,a,b");當a=123b=12345則輸出空123,12345
%ld是輸出長整形數據
o是格式符。以8進制輸出
x是格式符。以16進制輸出
u是格式符,用來輸出無符號數,10進制輸出
Ⅲ C語言本身有輸入和輸出語句
C語言本身並不提供輸入輸出語句,輸入和輸出操作是由函數來實現的。在C標准函數庫中提供了一些輸入輸出函數,例如,printf函數和scanf函數。在使用他們時,千萬不要誤認為他們是C語言提供的「輸入輸出語句」。printf和scanf不是C語言的關鍵字,而只是函數的名字。C提供的函數以庫的形式存放在系統中,它們不是C語言文本中的組成部分。不把輸入輸出作為C語言提供的語句的目的是使C語言編譯系統簡單,因為將語句翻譯成二進制的指令是在編譯階段完成的,沒有輸入輸出語句可以避免在編譯階段處理與硬體有關的問題,可以使編譯系統簡化,而且通用性強,可移植性好,對各種型號的計算機都適用,便於在各種計算機上實現。各種版本的C語言函數庫是各計算機廠商針對某一類型計算機的情況編寫的,並且已編譯成目標文件(.obj文件)。它們在連接階段與源程序經編譯而得到的目標文件相連接,生成一個可執行的目標程序。如果在源程序中有printf函數,在編譯時並不把它翻譯成目標指令,而是在執行階段調用已被連接的函數庫中的printf函數。
Ⅳ 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語言scanf語句
scanf()是C語言標准庫中的輸入函數,聲明包含在stdio.h文件中,因此要使用該函數,必須載入#include<stdio.h>頭文件。當執行到scanf函數時,程序就暫停等待用戶輸入,該函數只接受變數的地址,格式為&變數名。是一個阻塞式的函數,等用戶輸入完畢後,則將值賦值給變數,至此函數調用完畢。敲回車鍵告知計算機鍵入完畢。
函數原型:int scanf(const char *format,...);
說明:scanf() 是從標准輸入流stdio (標准輸入設備,一般是鍵盤)中讀內容的通用子程序,可以說明的格式讀入多個字元,並保存在對應地址的變數中。
其調用形式為: scanf("<格式說明字元串>",<變數地址>);變數地址要求有效,並且與格式說明的次序一致。
使用示例:
//使用scanf函數輸入一個字元變數。
chara;
scanf(「%c」,&a);
//同時輸入多個值。
scanf(「%d,%d」,&num1,num2);
//在內部不能使用 轉義字元,否則沒完沒了。
scanf(「%d 」,&a);
注意:在這里兩個佔位符之間是,隔開,則要求在輸入時也使用逗號隔開如輸入1,2。此時為num1=1,num2=2。若內部為「%d#%d」則輸入1#2。若內部為「%dy%d」,則輸入1y2。如果中間的字元是空格,則在輸入時可以用空格隔開,也可以敲tab鍵或者是回車鍵作為分隔符隔開,後兩者可以看做是由空格組成的。
擴展:格式說明符
轉換字元(就是%後跟的部分)
a 讀浮點值(僅適用於 C++)
A 讀浮點值(僅適用於 C++)
c 讀單字元
d 讀十進制整數
i 讀十進制、八進制、十六進制整數
e 讀浮點數
E 讀浮點數
f 讀浮點數
F 讀浮點數(僅適用於 C++)
g 讀浮點數
G 讀浮點數
o 讀八進制數
s 讀字元串
x 讀十六進制數
X 讀十六進制數
p 讀指針值
n 至此已讀入值的等價字元數
u 讀無符號十進制整數
[ ] 掃描字元集合
% 讀 % 符號(百分號)
附加格式說明字元表修飾符說明
L/l 長度修飾符 輸入"長"數據
h 長度修飾符 輸入"短"數據
W 整型常數 指定輸入數據所佔寬度
* 表示本輸入項在讀入後不賦值給相應的變數
Ⅵ c語言中要求用戶自己輸入的語句怎麼寫
一般可以用scanf(),因為可以用來輸入各種格式的數據。
比如有int類型的變數a,char類型的b,可以用
scanf("%d",a);
scanf("%c",b);
Ⅶ c語言輸出語句
float型默認6位小數
按%f輸出,默認小數點後有6位
12,域寬,不足補空格,你數數從第一個j到最後一個0是不是一共12個?
Ⅷ c語言輸入語句
getchar()和scanf("%c")的功能都是讀一個字元
區別是getchar()可以讀回車,而scanf("%c")會跳過回車。
所以scanf讀了2個字元1,2分別給了a,b。
然後第一個getchar()讀了回車符給c,讀了3給d.