C编程中 scanf("%s",&s)是什么意思

作者&投稿:布茜 (若有异议请与网页底部的电邮联系)
C语言中scanf的%s是什么意思,%c和%s有什么区别。会的进来,谢谢.~

%s在scanf中代表一个字符串,%c在scanf中代表字符。如:
char ch;
scanf("%c",&ch);表示从键盘输入一个字符到ch中,
char str[5];
scanf("%s",&ch);表示从键盘输入一个字符串到str这个字符串数组中

%s在scanf中代表一个字符串,%c在scanf中代表字符。如:
char
ch;
scanf("%c",&ch);表示从键盘输入一个字符到ch中,
char
str[5];
scanf("%s",&ch);表示从键盘输入一个字符串到str这个字符串数组中

最后那个s是一个变量,scanf是通俗说是赋值语句,得到终端的输入对变量s初始化
相对有一个printf,这个是输出到标准外设显示。
“%s”是格式化转换,这个s代表字符串,%c代表字符, %d代表整数

总体来说,这个语句是要你输入一串字符,对你设置的变量s赋值。

首先你要了解scanf函数在遇到空格,换行时就会停止读取,所以输入Ah2MA A3ha实际上只有Ah2MA保存到了数组中。s[i++]!='\0'就是判断有没有到字符串的末尾,如果没有就判断字符是不是'a'如果是就变为小写,如果是'A'则变为小写。当然因为s[i++]!='\0'判断完之后i已经指向第二个字符了,所以第一个大写的A不会变为小写!

Ah2MA A3ha之间是空格,现在是字符数组,空格也会被存入 ,所以Ah2MA A3ha整个都存入数组吧? 我记得好像是啊??
s[i++]!='\0 现在判断的不是字符串尾,是判断是不是空格,遇到空格就终止循环
if(s[i] == c) s[i]=s[i]-32;
else if(s[i]==c-32) s[i]=s[i]+32;
这是让小写a变为大写 大写变为小写

scanf("%s",&s)

这个是错的,%s说明输入的是字符串,s应该是个数组的首地址。就不需要在&s了

先找本书看看吧


龙城区13587053440: C语言中的scanf是什么意思 -
塞邰普润: scanf表示从键盘输入指定格式的数据.如:scanf("%d",x);指从键盘给x输入一个int型(整型)数据;scanf("%f",x);指从键盘给x输入一个float型(实型)数据; 对应的输出为:printf 按照指定的格式输出数据;如printf("%d",x); 指按整型数据输出X中的值. 举例说明如下:scanf("%d%d", &a, &b); // 接收用户从键盘输入的2个整数,分别赋值给变量a,b

龙城区13587053440: C语言中~scanf表示什么 -
塞邰普润: C语言中scanf是标准库函数,主要用来接收用户输入的数据. 函数格式:int scanf(char *format, args, ...); 功 能:从标准输入设备按format指定格式输入数据给args所指向的内存单元返 回 值 :读入并赋给args的数据个数.遇文件结束返回EOF,出错返回0 举例如下: int a;scanf("%d", &a); // 按%d的格式(即整型的格式),将用户输入的数据赋值给&a指向的内存单元(即变量a所在的内存单元).// 简单理解就是将用户输入的数转换为int类型并赋值给变量a

龙城区13587053440: C语言scanf是什么意思 -
塞邰普润: scanf是一个函数,与printf函数一样,它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中,其关键字最末一个字母f即为“格式”(format)之意

龙城区13587053440: C语言中scanf函数解释? -
塞邰普润: scanf函数是输入函数……例如:scanf(''%d'',&c),就是这样用的就是从终端输入一个变量例如3,那么c的值就是3,如果是int *p=&c;那么scanf(''%d'',p),就是这样的类型,%d是定义变量C的数据类型!

龙城区13587053440: “scanf”在c语言中什么意思? -
塞邰普润: scanf 是C语言中的输入函数,被定义在头文件stdio.h里: 函数原型: int scanf(const char *format,...);函数 scanf() 是从标准输入流stdio (标准输入设备,一般是键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中.其调用形式为: scanf("<格式说明字符串>",<变量地址>);变量地址要求有效,并且与格式说明的次序一致.

龙城区13587053440: c语言中的scanf 函数的用法 -
塞邰普润: 输出的值只是空格前面的字符是因为scanf函数的输入格式错误,输入参数的变量前需要加&.scanf("%s",s);改为scanf("%s",&s); scanf的用法是:scanf("格式控制字符串",输入参数一,输入参数二);格式控制字符串包含:格式控...

龙城区13587053440: c语言中scanf括号里&什么意思 -
塞邰普润: 代表取地址的意思,如scanf(“%d”,&a),则代表输入的数据将被填充到地址为&a的内存空间上,而&a的地址就是存储a的,所以输入的数据就存储到变量a中.

龙城区13587053440: C语言中scanf的使用 -
塞邰普润: scanf("a=%d b=%d",&a,&b);scanf(" x=%f y=%e",&x,&y);scanf(" c1=%c c2=%c",&c1,&c2); “”里面的是输入的格式,也就是说你的写法待会要输入的就是a=10 b=10 x=1.1.....为什么是这样呢~ 因为你的格式写成这样了~而且不是连着写的~那么必然你是必须要加空格在里面的~scanf(" x=%f y=%e",&x,&y); 这句话的空格里面第一个字符就是空格

龙城区13587053440: c语言中scanf函数的用法 -
塞邰普润: 比如int i; scanf("%d",&i);//&是取地址运算符,取i的地址 又如int a[10]; scanf("%d",a);//数组名本身就是一个数组的首地址 总结就是scanf(" 格式控制", 地址);

龙城区13587053440: C语言的Scanf是什么功能? -
塞邰普润: 变量是计算机语言中能储存计算结果或能表示值抽象概念,说的简单点就是存储你要用的值的. scanf 在C里面是输入用的 %d 代表读入的是int 类型

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网