c语言救命

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言救命相关的知识,希望对你有一定的参考价值。

1.将星期一、星期二、。。。星期日依次编号为1,2,。。。7,用switch语句编一个程序从键盘上输入星期的序号,则输出对应的英文。比如输入6,则输出“Saturday”。
2. 写一个计算器程序,用户输入运算数和四则运算符,输出计算结果。当输入的不是四则运算符或除数为0时,提示出错信息。比如,输入“4.4+6.5”,输出“=10.9”。程序的开头部分如下,请用switch语句将其补充完整。
#include <stdio.h>
main()
float a,b; char c;
printf(“input expression:a+(-,*,/)b\n”);
scanf(“%f%c%f”,&a,&c,&b);

第一题:

#include <stdio.h>
int main()

int day;
printf("请输入序号:");
scanf("%d", &day);
switch(day)

case 1:
printf("Monday!");
break;
case 2:
printf("Tuesday!");
break;
case 3:
printf("Wednesday!");
break;
case 4:
printf("Thursday!");
break;
case 5:
printf("Friday!");
break;
case 6:
printf("Saturday!");
break;
case 7:
printf("Sunday!");
break;
default:
printf("ERROR input!");
break;

printf("\n");
return 0;

第二题:
#include <stdio.h>
int main()
float a,b; char c;
printf("input expression:a+(-,*,/)b\n");
scanf("%f%c%f",&a,&c,&b);
switch(c)

case '+':
printf("%f+%f=%f\n",a, b, a+b);
break;
case '-':
printf("%f-%f=%f\n",a, b, a-b);
break;
case '*':
printf("%f*%f=%f\n",a, b, a*b);
break;
case '/':
if (b==0)
printf("ERROR! b 不能为 0!\n");
else
printf("%f/%f=%f\n",a, b, a/b);
break;
default:
printf("ERROR! 按这各格式输入:(a+b)\n");
break;

return 0;
参考技术A 1.
#include<stdio.h>
#include<conio.h>
int main()

int num;

printf("please input a number: ");
scanf("%d",&num);

switch(num)

case 1:
printf("Monday\n");
break;
case 2:
printf("Tuesday\n");
break;
case 3:
printf("Wednesday\n");
break;
case 4:
printf("Thursday\n");
break;
case 5:
printf("Friday\n");
break;
case 6:
printf("Saturday\n");
break;
case 7:
printf("Sunday\n");
break;
default:
printf("Error Input!\n");
break;


getch();
return 1;


2.
#include <stdio.h>
main()
float a,b; char c;
printf("input expression:a+(-,*,/)b\n");
scanf("%f%c%f",&a,&c,&b);

switch(c)

case '+':
printf("%f + %f = %f\n",a,b,a+b);
break;
case '-':
printf("%f + %f = %f\n",a,b,a-b);
break;
case '*':
printf("%f + %f = %f\n",a,b,a*b);
break;
case '/':
printf("%f + %f = %f\n",a,b,a/b);
break;
default:
printf("Error Input!\n");
break;


return 1;
参考技术B 这是c语言教材上的基本例题 参考技术C #include<stdio.h>
main()

int i;
printf("请输入星期\n");
scanf("%d",&i);
switch(i)

case 1:printf("Monday\n");break;
case 2:printf("Tuesday\n");break;
case 3:printf("Wednesday\n");break;
case 4:printf("Thursday\n");break;
case 5:printf("Friday\n");break;
case 6:printf("Saturdat\n");break;
case 7:printf("Sunday\n");break;
default:printf("输入错误");



#include <stdio.h>
main()

float a,b;
char c;
printf("input expression:a+(-,*,/)b\n");
scanf("%f",&a);
scanf("%c",&c);
scanf("%f",&b);
switch(c)

case'+':printf("%f",a+b);break;
case'-':printf("%f",a-b);break;
case'*':printf("%f",a*b);break;
case'/':
if(b==0.0)
printf("error\n");
else
printf("%f",a/b);
;break;
default:printf("error\n");

救命啊救命啊, 两种装载动态链接库的区别?

有一动态链接库libxxx.so, 里面提供了一个sayhello()函数,请问下面两种方式有什么区别?方式一:main.cint main() sayhello(); return 0;gcc -lxxx main.c; --编译连接时使用 -l进行连接这种方式实在不理解, 但也是用得最多的,比如我们的-lpthread -lm等等等。。。若libxxx.so代码变更重新编译, 我们也重新编译main.c会发现其md5值和之前的不一样。方式二:int main() handle = dlopen("libxxx.so", RTLD_NOW); p_sayhello = dlsym(handle, "sayhello"); (*p_sayhello)();gcc -ldl(这个是dlopen的库) main.c --编译连接时不使用 -l进行连接,而是在程序执行时动态打开。这种方式有点在于动态库变化时,不必编译main.c缺点是:1.如果动态库中有很多函数,那么每个函数都要进行dlsym,取出其地址十分麻烦 2.请补充

我知道区别了-l 相当于静态库,仅在链接的时候装载,不过不是合并入主程序本身(区别于静态库),而是直接将动态库的内容装入内存。 如果动态库在程序执行过程中改变了,程序依然使用的内存中的库。也就是所动态库的后继变更仅仅体现在so这里面,但是主程序在执行的时候依然使用内存中的动态库。dlopen 则是每次都直接从文件系统重新装载动态库。 参考技术A 回复 2# lrita 这个区别我也知道,请问除此之外还有什么?

以上是关于c语言救命的主要内容,如果未能解决你的问题,请参考以下文章

C语言,头文件不包含也能编译通过

求助啊!!!救命!!!关于c++和PROLOG混合编程

用C语言随机产生三个数,三个数之间进行四则运算,四则运算也随机产生

在C语言中如何实现用键盘输入一个字符串,并打印出来?

我用linux的root英文登陆xwindows后,把语言改成了中文,重启界面全是乱码,救命啊!!!!

高手救命·关于 error LNK2019: 无法解析的外部符号