如何用 ESC来结束循环 C语言
#include"stdio.h"#include<string.h>#defineN80main(){voidtotal(charstr[]);charstr[N];p...
#include "stdio.h"
#include <string.h>
#define N 80
main()
{
void total(char str[]);
char str[N];
printf("Enter a string:\n");
gets(str);
total(str);
}
void total(char str[])
{
int i,j,count=1;
char ch;
for(j=0;str[j]!='0';j++)
{
ch=str[j];
if(str[j]=='')
continue;
for(i=j+1;str[i]!='0';i++)/*结尾输入0来结束循环*/
{
if(ch==str[i])
{
count++;
str[i]='';
}
}
printf("%c=%d\n",ch,count);
count=1;
}
}
程序功能:输入一个字符串,统计输出各个字符出现的个数.
这个程序中,我用0来结束for循环,我想用ESC的ASCII码值'\x1B'来代替0来结束循环,但是出错,很多乱码,这是怎么回事?请高手请教. 展开
#include <string.h>
#define N 80
main()
{
void total(char str[]);
char str[N];
printf("Enter a string:\n");
gets(str);
total(str);
}
void total(char str[])
{
int i,j,count=1;
char ch;
for(j=0;str[j]!='0';j++)
{
ch=str[j];
if(str[j]=='')
continue;
for(i=j+1;str[i]!='0';i++)/*结尾输入0来结束循环*/
{
if(ch==str[i])
{
count++;
str[i]='';
}
}
printf("%c=%d\n",ch,count);
count=1;
}
}
程序功能:输入一个字符串,统计输出各个字符出现的个数.
这个程序中,我用0来结束for循环,我想用ESC的ASCII码值'\x1B'来代替0来结束循环,但是出错,很多乱码,这是怎么回事?请高手请教. 展开
2个回答
展开全部
#include <conio.h>
#include <stdio.h>
void main( void )
{
while(1)
{
if (_kbhit() && _getch()==0x1b)
break;
printf("do something ...");
}
}
#include <stdio.h>
void main( void )
{
while(1)
{
if (_kbhit() && _getch()==0x1b)
break;
printf("do something ...");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询