三道c语言的程序题要求要步骤全、最好把思路写上 先上200分在线等

作者&投稿:不朋 (若有异议请与网页底部的电邮联系)
c语言程序阅读题,需要详细解答步骤~

func(int n) //计算n的阶乘 即 1*2*...*n
void main()//计算1 3 5的阶乘的和
在while循环中
每次计算i的阶乘,并与s相加
i每次自增2
即i的值分别为 1 3 5
计算阶乘后相加得到s

初始 b1是a[0]和a[1]中小的那个, 而b2是大的那个
然后 循环a[2]到a[8] 也就是剩余所有元素
每个 和b1 b2比较, 如果比b1小, 那么 b2为原本b1值,b1为a[i]值
否则 如果a[i]比b2小,那么 b2赋值为a[i]
这样 b1最终值就是最小元素, b2最终值就是第二小的
所以输出为18,20

PS 这个程序是有问题的, 判断中else应该去掉。 否则在极端情况下会出错。 不过对于这个测试用例不会。

第一题很简单,没啥好说的,就是输入数字,然后一个简单的 switch case 语句。
#include <stdio.h>
int main()
{
int a, b, opr;

printf("输入两个数字,如 3 5 (数字用空格分开)\n");
scanf("%d %d", &a, &b);

printf("选择计算方式:\n");
printf("1. 加, 2. 减, 3. 乘, 4. 除\n");
scanf("%d", &opr);

switch (opr)
{
case 1:
printf("%d + %d = %d\n", a, b, a+b);
break;

case 2:
printf("%d - %d = %d\n", a, b, a-b);
break;

case 3:
printf("%d X %d = %d\n", a, b, a*b);
break;

case 4:
if (b == 0)
{
printf("除数不能为 0\n");
return 1;
}
printf("%d / %d = %d\n", a, b, a/b);
break;

default:
printf("无效的计算方式\n");
return 1;
}

return 0;
}
第二题,输入购买册数m后,计算出总价 total,然后再根据total的大小,乘以对应的折扣率,即得最终价格。
#include <stdio.h>
int main()
{
unsigned int total, m, price;

price = 3; /* 3元每册 */

printf("要买多少册?\n");
scanf("%u", &m);

total = m*price; /* 总价 */

if (total > 20000)
total *= 0.75;
else if (total > 10000)
total *= 0.8;
else if (total > 2000)
total *= 0.85;
else if (total > 100)
total *= 0.9;

printf("应付 %u 元\n", total);
return 0;
}

第三题,让 x 从1开始循环到 9 ,依次代入 111*11* (10*x+1) 这个式子中,如果结果等于 111111 ,那么就找到对应的x了,然后打印结果即可。 最终结果 x = 9.
#include <stdio.h>

int main()
{
int x;

for (x = 1; x <= 9; x++)
{
if (111*11*(10*x + 1) == 111111)
{
printf("x = %d, 111111 = 111*11*%d1\n", x, x);
break;
}
}
return 0;
}

输入两个数字,然后做个菜选项,然后从键盘获取输入的数字,switch判断对应数字字符,然后进行运算,输出结果
#include <stdio.h>
int main()
{
int a,b;
char c;
printf("输入两个数字");
scanf("%d %d",&a,&b);
menu:
printf("%s\n","1.加");
printf("%s\n","2.减");
printf("%s\n","3.乘");
printf("%s\n","4.除");

while(1)
{
c=getchar();
switch(c)
{
case '1':
printf("a+b=%d\n",a+b);
goto menu;
break;
case '2':
printf("a-b=%d\n",a-b);
goto menu;
break;
case '3':
printf("a*b=%d\n",a*b);
goto menu;
break;
case '4':
if(b==0)
printf("除数不能为0\n");
else
printf("a/b=%d\n",a/b);
goto menu;
break;
}
}
}

第二题
输入顾客购书的数量,然后计算总额,比较之后根据要求,算出打着后的总金额,输出即可
#include <stdio.h>
#include <stdlib.h>
int main()
{
char num[100];
int a;
double money=0;
int pay=0;
while(1)
{
printf("输入购书册数:");
gets(num);
a=atol(num);
money=3*a;
if(money>=100 && money<2000)
money=money*0.90;
else if(money>=2000 && money<=10000)
money=money*0.85;
else if(money>10000 && money<20000)
money=money*0.80;
else if(money>=20000)
money=money*0.75;
printf("顾客应付%.2f元\n",money);
}
}
第三题,楼上的就行 上面程序中加上while循环,可循环输入显示,不必重新执行程序

#include <memory.h>
#include <stdlib.h>
#include <stdio.h>
#include "math.h"

bool CalReslut(double a,double b, int Operate,double& result){
bool bVal = true;
switch(Operate){
case 1:
result = a + b;
break;
case 2:
result = a - b;
break;
case 3:
result = a * b;
break;
case 4:
if(b == 0){
bVal = false;
printf("除数不能为0!");
break;
}
result = a / b;
break;
default:
printf("输入的操作运算符不对!");
bVal = false;
break;
}
return bVal;
}

float CalMenoy(int nNumber,float fPrice = 3.0f){
if(nNumber <= 0 || fPrice <= 0){
printf("请输入合法的数据!");
return 0;
}
float fVal = fPrice*nNumber;

if (fVal >= 20000.0f)
return fVal*0.75f;
else if(fVal >= 10000.0f)
return fVal*0.80f;
else if(fVal >= 2000.0f)
return fVal*0.85f;
else if(fVal >= 100.0f)
return fVal*0.90f;
else
return fVal;
}

bool GetX(char* pRightVal,int& x){
if(pRightVal == 0)
return false;

char val[2][5];
memset(val,0,sizeof(val));
char* p = pRightVal;
char* ps = p;
int i = 0;
int v = 0;
while (*(p++)){
if(v == 2)break;
i++;
if(*p == '*'){
memcpy(val[v],ps,i);
ps = ++p;
i =0 ;
v++;
}
}
if(v != 2)
return false;
int a = atoi(val[0]);
int b = atoi(val[1]);
x = (111111/(a*b)-1)/10;
return true;
}

void mainFace(){
printf("请输入以下字符:\n");
printf("1: 计算两数;\n");
printf("2: 计算图书总价\n");
printf("3: 计算111111等式中x的值\n");
printf("0: 退出\n");
}
void main()
{
while(1){
mainFace();
char a;
scanf("%c",&a);
switch(a){
case '0':
return;
case '1':
{
double x,y;
int operater;
double val = 0;
printf("请输入a,b的值以及操作符:\n");
printf("1: +;\n");
printf("2: -;\n");
printf("3: *;\n");
printf("4: \\;\n");
scanf("%lf%lf%d",&x,&y,&operater);
if(CalReslut(x,y, operater,val)){
printf("请算结果为:%lf\n\n",val);
}
}
break;
case '2':
{
int num;
printf("请输入图书的数量(价格为3元):\n");
scanf("%d",&num);
float val = CalMenoy(num);
printf("应付:%f元\n\n",val);
}
break;
case '3':
{
char c[100];
memset(c,0,sizeof(c));
printf("请输入等式(如果111*11*):\n");
scanf("%s",c);
int x;
if(GetX(c,x)){
printf("X = %d\n\n",x);
}
}
break;
default:
break;
}
}
}

1.void operation(int a,int b)
{
int oper;
printf("please input two integers");
scanf("%d%d",&a,&b);
printf("1.加2.减3.乘.4除\n");
scanf("%d",&oper);
switch(oper)
{
case(1):
printf("a+b=%d\n",a+b);
break;
case(2):
printf("a-b=%d\n",a-b);
break;
case(3):
printf("a*b=%d\n",a*b);
break;
case(4):
if(b==0) printf("除数不能为0");

else printf("a/b=%d\n",a/b);
break;
default:
printf("please input a number between 1and4\n");

}

}
2.float pay(int m)
{
float price=3*m;
if(price>20000) price*=0.75;
else if(price>10000) price*=0.8;
else if(price>2000) price*=0.85;
else if(price>100) price*=0.9;
return price;
}

1.if(button1.text="加")
{
textbox3.text=textbox1.text*textbox2.text
}
都是类似的 类型转换的话 我就不弄了
2.
现买3元的书m册

double a=double.pare(书的价格*m)
if(a>20000)
{
应付钱=a*0.75
}else
if(a>10000 && a<20000)
{
应付钱=a*0.8
}
这个是第二题的
可以不给分


C语言编程题目
下面是一些C编程题目:1. 编写程序,从键盘输入两个整数,输出它们的和、差、积、商、余数。2. 编写程序,从键盘输入三角形的三条边长,判断它们是否可以构成三角形,并输出三角形的类型(等边、等腰、一般)。3. 编写程序,从键盘输入字符串,统计其中的大写字母、小写字母、数字和其他字符的个数,并...

10道经典的C语言例题(含参考程序)
1.打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个“水仙花数”,因为153=1^3+5^3+3^3。include include int main(){ int bai_wei,shi_wei,ge_wei,i,sum=0;for(i=100;i<1000;i++){ bai_wei=i\/100;shi_wei=(i%100)\/...

c语言经典100题,要过程
题目:有1,2,3,4个数字,能组成多少个互不相同且无重复数字的三位数 都是多少 1.程序分析:可填在百位,十位,个位的数字都是1,2,3,4.组成所有的排列后再去 掉不满足条件的排列.2.程序源代码:main(){ int i,j,k;printf("\\n");for(i1;i<5;i++)\/*以下为三重循环*\/ for(j1;j<5;...

c语言程序设计试题
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。2.程序源代码:代码如下:include "stdio.h"include "conio.h"main(){ int i,j,k;printf("\\n");fo...

求一些c编程题
C语言超级经典400道题目1、C语言程序的基本单位是___ A) 程序行 B) 语句 C) 函数 D) 字符、C、1 2、C语言程序的三种基本结构是___ A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构、A、1 3、C语言规定,程序中各函数之间...

一个c语言的程序题?
然后,在main()函数中定义一个头节点指针,并用它来存储整个链表 请点击输入图片描述 接下来,实现从键盘输入五个整数并将它们尾插入链表中 请点击输入图片描述 最后,实现链表中的插入和删除操作,并输出链表中的所有元素 下面是一个可行的c语言程序,该程序实现了从键盘输入五个整数并存储在链表中,...

求C语言习题!
【程序15】题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。1.程序分析:(a>b)?a:b这是条件运算符的基本例子。2.程序源代码:main(){ int score; char grade; printf("please input a score\\n"); scanf("%d",&score); grade=score>=...

三道c语言的程序题要求要步骤全、最好把思路写上 先上200分在线等_百 ...
第一题很简单,没啥好说的,就是输入数字,然后一个简单的 switch case 语句。include <stdio.h> int main(){ int a, b, opr;printf("输入两个数字,如 3 5 (数字用空格分开)\\n");scanf("%d %d", &a, &b);printf("选择计算方式:\\n");printf("1. 加, 2. 减, 3. 乘, ...

几道C语言的函数补全程序题,求大佬们解答
当然,非常乐意为您解答C语言函数补全程序题。以下是一些练习题和参考答案:编写一个函数,输入一个字符串,将其中的所有小写字母转换为大写字母并返回结果字符串。include <stdio.h>#include <string.h>#include <ctype.h>void toUpperCase(char *str) {for(int i = 0; i < strlen(str); i++)...

c语言程序设计习题!!10道
1. 在C程序中,只能用于整型变量的运算符是___ 求余(%)___。2. 在C语言中,char类型变量占 2 个字节。3. 若a已定义为double类型,请写出从键盘给a输入数据的语句 scanf("%lf",&a); 。4. 为使以下程序能正确运行,请填空。include<stdio.h> include<math.h> main(){ doubl...

伊犁哈萨克自治州19741901443: 三道c语言的程序题要求要步骤全、最好把思路写上 先上200分在线等 -
丘国逍遥: 1.if(button1.text="加") { textbox3.text=textbox1.text*textbox2.text } 都是类似的 类型转换的话 我就不弄了2.现买3元的书m册 double a=double.pare(书的价格*m) if(a>20000) { 应付钱=a*0.75 }else if(a>10000 && a<20000) { 应付钱=a*0.8 } 这个是第二题的 可以不给分

伊犁哈萨克自治州19741901443: 求助3道C语言题目,求详细过程 -
丘国逍遥: 1、D na #include"stdio.h" #include"stdlib.h" void main ( ) {char str [ 100];scanf ( "%s",str);//输入"an anple" scanf以空格或回车为结束 str只取空格以前的字符串aninverse (str);// 进入下面调用函数inverse(str)字符串str互换前后字符...

伊犁哈萨克自治州19741901443: 三道c语言程序设计题,求详细代码
丘国逍遥: 第一题: #include &lt;stdio.h&gt; #define SIZE 100 void main() { int arr1[3][4] = {{1,2,3,4},{1,2,3,4},{1,2,3,4}}; int arr2[SIZE][SIZE]; int m, n, i, j; m = 3; n = 4; printf("转置前:\n"); for (i = 0; i != m; ++i) { for (j = 0; j != n; ++j) { printf("%d ", arr1[i][j]); ...

伊犁哈萨克自治州19741901443: C语言编程三道 -
丘国逍遥: 1. 第一个问题看不到你的公式, 是否泰勒公式 e≈1+1+1/2!+1/3!+……+1/n! #include // c++ 头文件using namespace std;int main(){ double e=2.5; /&#...

伊犁哈萨克自治州19741901443: 3道简单的C语言题 -
丘国逍遥: #include "stdio.h" void main() { int x,y; x=6/6; y=5-3*x; printf("x=%d,y=%d\n",x,y); getch(); } ======================================================= #include "stdio.h" void main() { int i; for(i=1;i<=100;i++) if(i%2!=0&&i%3!=0) ...

伊犁哈萨克自治州19741901443: 三道C语言题目,求大神. -
丘国逍遥: 第一题#include<stdio.h>int main() {int a[7][7];int n,i,j,sum=0;printf("Input n:");scanf("%d",&n);puts("Input array:");for(i=0;i<n;i++){for(j=0;j<n;j++){scanf("%d",&a[i][j]);if(i==n-1||j==n-1||(i+j==n-1))continue;sum+=a[i][j]; }}printf...

伊犁哈萨克自治州19741901443: 问3道C语言编程题目
丘国逍遥: 1.#include&lt;stdio.h&gt; int main(){ int a[3]={1,2,3},b[3]={4,5,6},c[3]; for(int i=0;i&lt;3;i++){ c[i]=a[i]+b[i]; printf("%-2d",c[i]); } return 0; } 2.#include&lt;stdio.h&gt; int main(){ int a[10],i,j=0,max; for(i=0;i&lt;10;i++){ scanf("%d",&amp;a[i]); } max=a[0]; ...

伊犁哈萨克自治州19741901443: 有关C语言的三道选择题 -
丘国逍遥: 1.开始i==2,进入for循环,进入do while循环,i%3==2,执行continue,判断(!i)==0,跳出do while循环,执行n++,n==1.进入下一次循环,i==3,进入do while循环,i%3==0,没有执行continue,往下执行n++,n==2,判断(!i)==0,跳出do ...

伊犁哈萨克自治州19741901443: 三道C语言题(急) -
丘国逍遥: 真想不通,你是怎么碰上我这么无聊的人的?第一个:#include<iostream.h> bool sort(int A[],int num); bool output(int A[],int num); const int num=6; void main() { int X[num]={8,4,3,1,2,7}; sort(X,num); output(X,num); cout<<endl; } bool sort(int A[],int ...

伊犁哈萨克自治州19741901443: 三道C语言填空题下面的程序是求1!+3!+5!+……+n!的和.#includeint main(){long f,s;int i,j,n;__(1)__;scanf("%d",&n); for(i=1;iarr;p--)*p=*(__(2)__);*arr=array... -
丘国逍遥:[答案] 下面的程序是求1!+3!+5!+……+n!的和. (1)printf("请输入N:") (2)i++ (3)j

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网