c语言,考试题,求教大神,图上的答案是错的
#include #include #include int compute(int m, int n, char op){switch(op) {case '+': return m+n;case '-': return m-n;case '*': return m*n;case '/': return m/n;}}int genExpression(char *exp, char c){int m, n;char op[4] = {'+', '-', '*', '/'};srand((unsigned)time(NULL));m = rand()%10+1;n = rand()%10+1;if(c == '?')c = op[rand()%4];if(c == '/')while(n == 0 || m%n != 0) n = rand()%10+1;else if(c == '-')while(n > m) n = rand()%10+1;sprintf(exp, "%d %c %d = ?", m, c, n);return compute(m, n, c);}int doTask1(){char exp[20];int result, answer;result = genExpression(exp, '*');while(1) {puts(exp);scanf("%d", &answer);if(result == answer) {printf("Right!
");return 1;}printf("Wrong! Please try again!
");}}int doTask2(){char exp[20];int i, result, answer;result = genExpression(exp, '*');for(i = 0; i < 3; i++) {puts(exp);scanf("%d", &answer);if(result == answer) {printf("Right!
");return 1;}if(i == 2)printf("Wrong! You have tried three times! Test over!
");else printf("Wrong! Please try again!
");}return 0;}int doTask3(){char exp[20];int i, result, answer, score = 0;for(i = 0; i < 10; i++) {result = genExpression(exp, '*');puts(exp);scanf("%d", &answer);if(result == answer) {printf("Right!
");score += 10;}else printf("Wrong!
");}printf("Your score is %d. You answered %d%% questions right
", score, score);return 1;}int doTask4(){char exp[20];int i, result, answer, score = 0;for(i = 0; i < 10; i++) {result = genExpression(exp, '?');puts(exp);scanf("%d", &answer);if(result == answer) {printf("Very good!
");score += 10;}else printf("Wrong!
");}printf("Your score is %d. You answered %d%% questions right
", score, score);return 1;}main(){printf("
Do task 1
");doTask1();printf("
Do task 2
");if(doTask2() == 0)return 0;printf("
Do task 3
");doTask3();printf("
Do task 4
");doTask4();}
A,D都是纯数字,所以肯定符合。B的5L表示长整型的5,L是long int,所以只有C是错误的
#include <stdio.h>#include <stdlib.h>
#include <math.h>
int main()
{
int i, a, b, c;
printf("isomorphic numbers are:\n");
for(i=1; i<=100; i++)
{
a = i * i % 10;
b = i * i % 100 / 10;
//c = i * i % 100;
if(i < 10)
{ if (i == a && b > 0) printf("%6d", i); }
else if(i==a+b*10)printf("%6d", i);
}
printf("\n");
printf("Hello world!\n");
return 0;
}
一道c语言编程题,求教
思路分析:首先建立一个缓冲数组,由于题目要求输入的数据个数不超过两位,所以,数据的位数设为100即可,即BUF[100]; 当检测到输入,(+,-,*,\/)的时候,停止输入,并将前面的树,用求最大最小的算法(查找法)找出其最大值和最小值(这个算法也可以在输入的时候同时操作!),当输入“=”的...
大一期末考试复习题,求教C语言编程高手
2、A吧。这个不太确定。c语言中不允许出现A=B=C形式的赋值。C中没有**这个东西,D中,强制转换为y=(float)i;3、B 所谓保留字,一般是指C语言留作关键字了,比如int,我们不能定义一个变量名叫int的。4、8 参照题目一,依次计算各个表达式,取最后一个表达式的值,结果为8。参考资料:me ...
c语言,这题看不懂了,求教,6.10,这题switch里面是2473-50=2423吗,那么...
getchar()函数是获取单个字符。所以2473, 表示获取4个字符,分别是‘2’ ‘4’ ‘ 7’ ‘3’ 。(最后是获取回车结束循环)所以总共执行了4次while循环体。 4次c分别等于2 4 7 3 字符 第一次:c为'2' ,执行c-’2‘ , 即‘2’-‘2’。 得0,所以执行case 0。。
求教两道C语言考题
(1) %f默认是输出6位小数。(2)答案错了 ,答案D。3是大于1的奇数吧!3%2 == 1 (%是求余数)3\/2 = 1
c语言新手问题。求教。
include<stdio.h> int main(){ char s[100];freopen("1.in","r",stdin);freopen("1.out","w",stdout);fclose(stdin);fclose(stdout);return 0;}
C语言问题!!求教!!为什么最后输出多一个0呢?
for(m=0;m<s;m++)for(x=0;xa[m+1]){b=a[m];a[m]=a[m+1];a[m+1]=b;} 这段 比较到最后一个时m=s-1,你把他和m+1比这里越界了,a[m+1]就是a[s],这里a[s]没赋值所以是0 ,你交换后自然是0
C语言编程题求教,给定一个整型数组A和整数N,求A中N个数相加的和的最大...
include<stdio.h>#include<stdlib.h>static int a[100], A, N;int f(int x){int i, flag, max=0;for(i=0; i<A; i++)if(a[i]>=max) {max=a[i]; flag = i;}a[flag] = -1;if(x==1) return max;return max+f(x-1);}int main(){int i=0;A=10; N=3;srand(...
求教一道C语言问题
第一方法:有些复杂(就是你写的这个)include<stdio.h> include<string.h> void strmcpy(char *s, char *t, int m);int main(void){ char s[80], t[80];int m;printf("Input a string: ");gets(t);printf("Input an integer: ");scanf("%d", &m);strmcpy(s, t, m);printf(...
C语言 求教高手 程序题
答案很简单,首先,我们要明白联合union这种数据结构是表示几个变量公用一个内存位置,也就是说它所占内存大小就是该联合成员中占用内存最大的那个成员的大小;在你的程序中 union EXAMPLE {struct {int x;int y;}in; \/\/第一个成员,占用8个字节 int a;\/\/第二个成员,占用4个字节 int b;\/\/第...
求教几个语言文字方面的问题!
1、应改为:毋庸质疑,二手房市场这块‘大蛋糕’将会成为下一个争夺热点。2、C 一般写成夹克。茄(读jia一声)时只作雪茄 3、C 应改为:我们要看到,公平只能是相对的。4、CD A句应改为:希望这节课能给各位同学的写作带来一点小小的启示。B句应改为:写实和想像(不是象)作为作文教学的两...
犁河脉平: #include<stdio.h> int main() {int n,i,t,a[110];scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);for(i=0;i<n;i++)if(a[i]%2)printf("%d\n",a[i]);else printf("%d\n",a[i]-1);return 0; }
北江区15989424512: c语言编程题 如下图所示 - ?
犁河脉平: #include<stdio.h>#include<stdlib.h> int IsPrime(int n) { int i,r=1; if(n<=1) { r=0; } else { for(i=2;i<=n-1;i++) { if(0==n%i) { r=0; break; }} } return r; } void OutputPrimeFactor_1(int n) { int over=0,i=2; while(!over) { if(IsPrime(i)) { while(0==n%i) { if(n==i) //i是...
北江区15989424512: c语言编程问题 图中第三题求解 - ?
犁河脉平: #include int demand(int year){ if(year>=1990 =1995) { return 1200; } if(year>1995 =2010) { return 1200+60*(year-1995); } ...
北江区15989424512: 求救c语言大神,如图,帮忙解答下,满意立刻点赞 - ?
犁河脉平: 正确答案是B、8 因为\041是一个字符#041是4个字符 \\是一个字符
北江区15989424512: C语言考试,求大神解答.?
犁河脉平: 第一空:感觉题目应该是输出100到999之间的数,应该是填i < 1000第二空:sw = i%100/10;第三空:if(gw == 0 || sw == 0 || bw == 0)
北江区15989424512: 简单的C语言题目,要考试了,求大神帮助 - ?
犁河脉平: #include int main() {char s1[200],s2[200],*p,*q; int k,m; gets(s1); scanf("%d%*c",&k); gets(s2); for(m=0;s2[m];m++); p=s1+k; for(q=p;*q;q++); for(;q>=p;q--)*(q+m)=*q; for(q=s2;*q;*p++=*q++); puts(s1); return 0; }
北江区15989424512: C语言考试题求大神帮忙做 - ?
犁河脉平: //第一题#include "stdafx.h"#include <iostream> using namespace std; int main ( ) { int iArray[30] = {0}; int iAraayRes[6] = {0}; iArray[0] = 2; for(int i=1;i < 30;i++) { iArray[i] = 2+iArray[i-1]; } int iTemp = 0; int iCount = 0; int iFlag = 0; for(int j=0;j < 30;...
北江区15989424512: c语言考试,求答案,急!!急!! - ?
犁河脉平: 一、选择题((1)—(40)每题1分,(41)—(50)每题2分,共60分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分. (1) 在32位计算机中,一个字长所占的字...
北江区15989424512: c语言试题及答案?
犁河脉平: 第一题 #include<iostream.h> void fun(int a){ if(a<10) cout<<a<<endl; else{ cout<<a%10; fun(a/10); } } void main(){ fun(12345); } #include<iostream.h> void main(){ int n=100,i,sum=0; for(i=1;i<=n;i++) sum+=i; cout<<"1+2+…+100="<<sum<<endl; }...
北江区15989424512: 请教高人,几个C语言笔试题,求答案 - C / C++ - ?
犁河脉平: 第1题 跟你想的差不多 都是C第2题 ArrayName 和 &ArrayName的类型不同 一个是int * 一个是 int *[10]第3题 等高人长篇大论吧第4题 没怎么看明白 printf(\"1\"); 是进入一个死循环 你说的调用函数 后面那话我没看明白