之前在论坛上见有人做了一个代码高亮的程序,于是我也有些心动。 这是样本代码:#include <stdio.h>#include <conio.h>int main(){int a=0,n=0,c=0;char ch;printf("请输入字符串\n");while ((ch=getchar())!='\n'){ //printf("请输入字符\n"); if (ch=='i') a=1; if (ch!='e'&&ch!='i'&&a==1||ch=='*') c++; if (ch=='e'&&a==1) //当a为1时表示在e之前有i { if (c==1) //当c等于1时表示i与e之间只有一个其他字符 { n++; a=0; } c=0; //如果此处不重新赋值为0,则下次c会在1的基础上继续递增 }} printf("刚才的字符中有%d次",n);getch();return 0;} 转换后: [color=red]#include <stdio.h>[/color][color=red]#include <conio.h>[/color][color=blue]int[/color] main(){[color=blue]int[/color] a=[color=800080]0[/color],n=[color=800080]0[/color],c=[color=800080]0[/color];[color=blue]char[/color] ch;printf([color=FF00FF]"请输入字符串\n"[/color]);[color=blue]while[/color] ((ch=getchar())!=[color=800080]'\n'[/color]){ [color=008000]//printf("请输入字符\n");[/color] [color=blue]if[/color] (ch==[color=800080]'i'[/color]) a=[color=800080]1[/color]; [color=blue]if[/color] (ch!=[color=800080]'e'[/color]&&ch!=[color=800080]'i'[/color]&&a==[color=800080]1[/color]||ch==[color=800080]'*'[/color]) c++; [color=blue]if[/color] (ch==[color=800080]'e'[/color]&&a==[color=800080]1[/color]) [color=008000]//当a为1时表示在e之前有i[/color] { [color=blue]if[/color] (c==[color=800080]1[/color]) [color=008000]//当c等于1时表示i与e之间只有一个其他字符 [/color] { n++; a=[color=800080]0[/color]; } c=[color=800080]0[/color]; [color=008000]//如果此处不重新赋值为0,则下次c会在1的基础上继续递增[/color] }} printf([color=FF00FF]"刚才的字符中有%d次"[/color],n);getch();[color=blue]return[/color] [color=800080]0[/color];} 效果如图

评论