c语言循环输入字符串
‘壹’ 有关c语言中字符串输入及循环语句问题
你的问题应该跟这个问题是一样的,
详见:http://..com/question/2074964060003873148
都是在接收键盘输入后没有清键盘缓存区。
每次输入后,按下回车键,会有对应的0x10(换行),0x13(回车)两个ASCII字符也进入键盘缓冲区,所以下一个键盘扫描函数扫描输入字符时,0x10字符等从键盘的缓存区进入,被输入扫描函数当做输入字符串赋值给字符串变量。故程序继续往下执行了,而不是该输入操作没有执行。
更改措施:每次scanf后对键盘缓存区做清缓存动作,如fflush(stdin)等,即可避免此问题发生
相关部分改为:
a=getchar();
fflush(stdin); //增加一个清缓存动作
printf("请输入一个字符串:\n");
gets(str);
。。。
应可处理此问题。
‘贰’ C语言用for循环输入字符(#结束输入)并立刻输出,如何统计出一共输入的字符数
按照你程序的意思:
输入字符,对小写字母ASCII码处理后打印,其它字符不处理直接打印。输入#号结束输入。
统计输入字符的个数(不包括回车和#)。
思路:内嵌循环输入无视回车。
下面是改写内容:
#include <stdio.h>
int main()
{
char chChar=0;
int i=0;
for (i=0;chChar!='#';i++)
{
while((chChar=getchar())=='\n');
if(chChar=='#') break;
if (chChar>='a'&&chChar<='x')
chChar=chChar+2;
else if(chChar>='y'&&chChar<='z')
chChar=chChar-24;
putchar(chChar),putchar('\n');
}
printf("字符个数为%d\n",i);
return 0;
}
‘叁’ c语言怎样循环控制字符输入的个数
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
intmain()
{
char*buf=0;
intsize=0;
do
{
printf("inputsize:");
scanf("%d",&size);
if(size>0){
buf=(char*)malloc(sizeof(char)*(size+1));
if(buf==0)
{
printf("can'tallocmem ");
break;
}
memset(buf,0x00,sizeof(char)*(size+1));
scanf("%s",buf);
printf("%s ",buf);
free(buf);
}elsecontinue;
}while(size>0);
return0;
}
‘肆’ 用C语言从键盘循环输入字符5个字符串
void main ()
{
char string[5];
int i;
char max,min,choice;
for(i=0;i<5;i++)
{
scanf("%c",&string[i]);
}
max = string[0];
for(i=1;i<5;i++)
if(strcmp(max,string[i]<0)
{
choice = max;
max = string[i];
string[i] = choice;
}
printf("%c",max);
//最小的同理
}
‘伍’ C语言 如何用一个循环输入字符串,例如123 e-3并换行结束
#include<stdio.h>
main()
{
char c[5];
int i;
for(i=0;i<5;i++)
{
scanf("%1c",&c[i]);
}
system("pause");
}
‘陆’ c语言中怎么连续输入几个字符串
1、首先我们新建一个dev C++的项目。
‘柒’ C语言怎么用循环输入一个字符串,遇到特定字符停止(‘@’) 123abc@
charch;
while((ch=getchar())!='@')
...
‘捌’ 如何在C语言里用循环语句输入字符串
字符串在c语言中都是用字符数组中存放的,所以用循环顺序的查找需要操作的字符就行了,这是查找类的函数,修改和转换类的也是这样。具体的操作很灵活,要看你算法学得怎么样。
‘玖’ c语言里,如何用循环输入输出字符串(不能用函数,只能用printf,scanf)
#include<stdio.h>
main()
{
int n,m
char a[10];
scanf("%d",&n);
m=n;
while(n){
n--;
scanf("%s",&a[n]);
}
while(m){
m--;
printf("%s",a[m]);
}
}
‘拾’ C语言字符串如何循环输入与储存
#include<stdio.h>
#include<string.h>
char str[1005],ans[1005];
void main()
{
int MaxLen = 0;
int CurLen;
int i;
for(i=0;i<10;++i)
{
gets(str);
CurLen = strlen(str);
if(CurLen>MaxLen)MaxLen=CurLen,strcpy(ans,str);
}
puts(ans);
}