A. c语言程序设计(在线等)
// 在满足你的要求1、2上,还实现了以下的输入方式:
// 10+
// 19
// 输出 10+19=29
// 或者
// 10
// +19
// 输出 10+19=29
#include <stdio.h>
#include <string.h>
void main()
{
char formula[50];
char opt;
char *p;
unsigned int i;
double m, n, r;
////////////////////////////////////
// 输入部分
////////////////////////////////////
printf("请输入单符号运算表达式(符号 + - * /): ");
scanf("%s", formula);
// 如果没有找到操作符,则允许用户继续输入
i = strcspn(formula, "+*-/");
if (i==strlen(formula))
scanf("%s", &formula[i]);
// 如果操作符是最后一个字符,则允许用户继续输入
i = strcspn(formula, "+*-/");
if (i==strlen(formula)-1)
scanf("%s", &formula[i+1]);
////////////////////////////////////
// 检验部分
////////////////////////////////////
// 检验非法字符
for (i=0; i<strlen(formula); i++)
if (strchr("1234567890.+=*/", formula[i])==NULL)
{
printf("Error: 输入的数据有非法字符\n");
return;
}
// 检验第一个数字的小数点
i = strcspn(formula, "+*-/");
p = strchr(formula, '.');
if (p != NULL)
{
p = strchr(p+1, '.');
if (p != NULL)
if (p - formula < (int)i)
{
printf("Error: 第一个数字中存在两个小数点\n");
return;
}
}
// 检验第二个数字的小数点
p = strchr(&formula[i+1], '.');
if (p != NULL)
{
p = strchr(p+1, '.');
if (p != NULL)
{
printf("Error: 第二个数字中存在两个小数点\n");
return;
}
}
////////////////////////////////////
// 分解用户输入
////////////////////////////////////
sscanf(formula, "%lf%c%lf", &m, &opt, &n);
////////////////////////////////////
// 运算部分
////////////////////////////////////
switch(opt)
{
case '+': r = m + n; break;
case '-': r = m - n; break;
case '*': r = m * n; break;
case '/': r = m / n;
}
////////////////////////////////////
// 输出部分
////////////////////////////////////
printf("%s = %lf\n", formula, r);
}
B. c语言程序设计怎么做
1、Micosoft visual C++,经典推荐
2、TC,学校推荐
3、DEV C++,个人推荐
4、C-FREE,国人自己做的
5、turbo c 3.0,新人推荐
6、ANSI C
C与C++的区别:C语言是面向过程的编程语言,C++是面向对象的编程语言。
C. 用c语言程序设计,求代码
提供两种思路,这里只给思路不给代码,因为网络知道现在似乎贴代码格式会乱,而且自己写代码更容易进步。
第一种暴力的方法:遍历所有格点,用勾股定理算出三条边长度,用海伦公式算出面积。
勾股定理这个大家都会。海伦公式可以通过三边长度算出三角形面积。
海伦公式大致内容:令 p = ( a + b + c ) / 2 ,则 S = sqrt [ p ( p - a ) ( p -b ) ( p - c ) ] 。
(之前题目看错了。。重新写一遍这个方法
暴力的方法在 9×9 的范围内当然跑得快,但是如果题目加强,让你在 10^7×10^7 的方格内找好点,你怎么找?
第二种方法:根据面积相等和底边长度关系,可以求出高的比值,然后设出其中一条高的长度,就能得到另一条高的长度。然后写出两个直线方程并联立,可以得到一个新的方程。这个方程的图象上的整点就是好点。
听起来有点绕,拿这道题做例子就好理解了。
设 △PAB 的高为 a (为了方便记作条件①),则 △PAC 的高为 2a (条件②)。
以方格左下角为原点建系,可以写出满足条件①的直线解析式 y = x + √2 a 。
同理满足条件②的直线解析式为 y = 12 - x - 2√2 a 。(这里 a 的系数可正可负,篇幅原因只算一种,另一种后面代入一遍就好了)
联立可得 P 坐标为 ( 6 - 3√2/2 a, 6 - √2/2 a )。
根据坐标式子和题目性质可得 P 图象必定过 A( 6, 6 ),并且图象是一条直线。
设 P : y = k ( x - 6 ) + 6 ,代入坐标解得 k = 1/3 。
所以 P 在直线 y = 1/3 x + 4 上。
同理,P 也在直线 y = 3 x - 12 上。
然后把所有横坐标代入就好啦,复杂度直接少了一阶。(事实上还可以继续优化,不过这样已经很优了)
D. 列出程序清单(c语言程序设计)
#include<stdio.h>
main()
{
int a,b,k;
printf("请输入 a:\n");
scanf("%d",&a);
printf("请输入 b:\n");
scanf("%d",&b);
k=a;a=b;b=k;
printf("a=%d b=%d\n",a,b);
}
E. c语言程序设计用什么软件啊
我推荐学习C语言的书籍是: C Primer Plus中文版
开发工具是: VS2008 或者 VS2010
如果有条件,可以找一个好老师或者好师傅.
我认为一本好书和一个好的开发工具和一个好老师好师傅,你学习效率将会有很大的提升.而不是持久不能入门.
你也网络一下, 80X86汇编小站 网站里面有篇文章是写给C/C++语言初学者的.标题是:
如何正确的入门Windows系统下C/C++学习领域.
这文章我看过,准确的说明了学习C/C++的各种细节,你也可以通过这篇文章联系作者交流更多的编程问题。
F. C语言程序设计怎么写
1 多看书。这个是基础。没人能够凭空就会,只能多看书。 2 多上机。C语言是一门编程语言,最终的目的是为了编程。所以也只有在实战中才能够更快的理解知识点,达到快速上手的目的。 3 多想。不要死读书,多想想为什么。理解了才能掌握的更扎实。 4 如果有条件,可以找人带。学习C语言,老师虽然不是必须,但有比没有要好很多。
G. c语言程序设计. 由键盘输入两个整数,分别计算这两个数的和、差、积、商,并输出结果。
具体输入如下:
#include "stdio.h"
main()
{ int a,b;
printf("请输入两个整数(a,b):");
scanf("%d,%d",&a,&b);
printf("和:%d ",a+b);
printf("差:%d ",a-b);
printf("积:%d ",a*b);
printf("商:%f ",(float)a/b);}
H. C语言程序设计:股票交易系统
课程设计?
I. c语言程序设计怎么做
//例题1
#include<stdio.h>
#include"string.h"
intmain()
{
doubletwages=0.00;
doublehours=0.00;
doubleswages=0.00;
printf("请输入劳动时间 ");
scanf("%lf",&hours);
printf("请输入每小时工资 ");
scanf("%lf",&swages);
//计算应发工资
twages=swages*hours*0.9;
printf("应发工资[%.2lf] ",twages);
return0;
}
//例题2
#include<stdio.h>
#include"string.h"
intmain()
{
intnum1=1500;
intnum2=350;
intshang=0;
intyushu=0;
shang=num1/num2;
yushu=num1%num2;
printf("商[%d]余数[%d] ",shang,yushu);
return0;
}
//例题3
#include<stdio.h>
#include"string.h"
intmain()
{
doubletemperature1=0.00;
doubletemperature2=0.00;
printf("请输出华氏温度F ");
scanf("%lf",&temperature1);
temperature2=(double)5/9*(temperature1-32);
printf("摄氏温度[%.2lfC] ",temperature2);
return0;
}
//例题4
#include<stdio.h>
#include"string.h"
intmain()
{
doubletotamt=0.00;
doublepayamt=0.00;
doublechgamt=0.00;
doubleappleweight=0.00;
doublebananaweight=0.00;
doubleorangeweight=0.00;
doubleappleprice=3.50;
doublebananaprice=2.60;
doubleorangeprice=1.80;
printf("请输入苹果重量 ");
scanf("%lf",&appleweight);
printf("请输入香蕉重量 ");
scanf("%lf",&bananaweight);
printf("请输入橘子重量 ");
scanf("%lf",&orangeweight);
totamt=appleweight*appleprice+bananaweight*bananaprice+orangeweight*orangeprice;
printf("应付金额[%.2lf] ",totamt);
do{
printf("请输入客户支付金额 ");
scanf("%lf",&payamt);
}while(payamt<totamt);//支付金额小于总金额时,重复输入动作
chgamt=payamt-totamt;
printf("顾客找零[%.2lf] ",chgamt);
return0;
}