关于C语言中,数组输入元素问题。

zaixiankaifa 2013-05-27 05:33:01
#include <stdio.h>
#include <string.h>

int main(){
char s[5];
int i,k,n;
k=strlen(s);
printf("Please input a string :\n");

for(i=0;i<5;i++)
{
scanf("%c",&s[i]);
}

printf("The input string is: %s\n",s);

问题:在scanf("%c",&s[i])中,如果把%c换成%s,那么之后的参数是不是应该换成&s ? 可不可以在C语言中,输入一个字符串作为scanf的参数? 如果可以的话,麻烦牛人指导
...全文
137 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ForestDB 2013-05-27
  • 打赏
  • 举报
回复
去读scanf的文档。
Gonefar 2013-05-27
  • 打赏
  • 举报
回复
直接s就可以了,因为s是数组的首地址。
绯红女王 2013-05-27
  • 打赏
  • 举报
回复
给s[i]赋值: 方法一: 逐个赋值,给每个元素赋值。(只能是字符) for(i=0;i<4;i++) { scanf("%c",&s[i]); } 方法二: 赋值字符串。 scanf("%s",s); 这里的s,表示s[i]的首地址。如果s[i]足够大,没什么影响。 如果s[i]比较小,需要注意格式:s[4] scanf("%4s",s);
赵4老师 2013-05-27
  • 打赏
  • 举报
回复
要么
for(i=0;i<4;i++)
 {
 scanf("%c",&s[i]);
 }
 s[4]=0;
要么
 scanf("%4s",s);

69,381

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧