谁能帮我分析一下这道c语言题目啊?~若运行以下程序时,从键盘输入 ADescriptor(表示回车),则下面程序的运行结果是#include main(){char c;int v0=1,v1=0,v2=0;do{switch(c=getchar()){case ′a′:case ′
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/11 12:52:50
![谁能帮我分析一下这道c语言题目啊?~若运行以下程序时,从键盘输入 ADescriptor(表示回车),则下面程序的运行结果是#include main(){char c;int v0=1,v1=0,v2=0;do{switch(c=getchar()){case ′a′:case ′](/uploads/image/z/9669275-35-5.jpg?t=%E8%B0%81%E8%83%BD%E5%B8%AE%E6%88%91%E5%88%86%E6%9E%90%E4%B8%80%E4%B8%8B%E8%BF%99%E9%81%93c%E8%AF%AD%E8%A8%80%E9%A2%98%E7%9B%AE%E5%95%8A%3F%7E%E8%8B%A5%E8%BF%90%E8%A1%8C%E4%BB%A5%E4%B8%8B%E7%A8%8B%E5%BA%8F%E6%97%B6%2C%E4%BB%8E%E9%94%AE%E7%9B%98%E8%BE%93%E5%85%A5+ADescriptor%EF%BC%88%E8%A1%A8%E7%A4%BA%E5%9B%9E%E8%BD%A6%EF%BC%89%2C%E5%88%99%E4%B8%8B%E9%9D%A2%E7%A8%8B%E5%BA%8F%E7%9A%84%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C%E6%98%AF%23include+main%EF%BC%88%EF%BC%89%7Bchar+c%3Bint+v0%3D1%2Cv1%3D0%2Cv2%3D0%3Bdo%7Bswitch%EF%BC%88c%3Dgetchar%EF%BC%88%EF%BC%89%EF%BC%89%7Bcase+%E2%80%B2a%E2%80%B2%3Acase+%E2%80%B2)
谁能帮我分析一下这道c语言题目啊?~若运行以下程序时,从键盘输入 ADescriptor(表示回车),则下面程序的运行结果是#include main(){char c;int v0=1,v1=0,v2=0;do{switch(c=getchar()){case ′a′:case ′
谁能帮我分析一下这道c语言题目啊?~
若运行以下程序时,从键盘输入 ADescriptor(表示回车),则下面程序的运行结果是#include
main()
{char c;
int v0=1,v1=0,v2=0;
do{switch(c=getchar())
{case ′a′:case ′A′:
case ′e′:case ′E′:
case ′i′:case ′I′:
case ′o′:case ′O′:
case ′u′:case ′U′:v1+=1;
default:v0+=1;v2+=1; }
}while(c!=′\n′);
printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);}
A)v0=7,v1=4,v2=7
B)v0=8,v1=4,v2=8
C)v0=11,v1=4,v2=11
D)v0=13,v1=4,v2=12
谁能帮我分析一下这道c语言题目啊?~若运行以下程序时,从键盘输入 ADescriptor(表示回车),则下面程序的运行结果是#include main(){char c;int v0=1,v1=0,v2=0;do{switch(c=getchar()){case ′a′:case ′
这个程序是对输入字符串的字母统计作用,首先你得明白:
1、switch中,符合哪个case条件,则直接跳过前面的case直接执行符合的case.
2、当case后没break时,其下面的语句将一一好无条件的执行.
现在来分析字母:
A:跳到case ‘A’;然后一次执行后面语句.V0=1(default),V1=1(case ‘U’),V2=1(default);
D:跳到default,则,V0=2,V1=1,V2=2
同理你可以一一处理后面的字母了.
最后应该是:V0=13,V1=4,V2=12(因为是do语句,对《CR》判断时先进行了加1计算,所以结果V0不是12而是13,V2不是11而是12,V1不是3而是4.