本文目录一览:
c语言编程题目及答案
#include stdio.h
#include math.h
void main(void)
{
double a;
double b;
double c;/* 以上三个变量分别对应三边 */
double sin_c;/* c边对应角的正玄值 */
double cos_c;/*c边对应角的余玄值*/
double cos_a;
double area; /* 三角形的面积 */
printf("输入a,b,c:");
scanf("%lf, %lf, %lf", a, b, c);
if(((a+b)c) (a-b)c)
{
printf("三边能够成三角形\n.");
cos_c = (a*a + b*b -c*c)/(2*a*b);
cos_a = (b*b + c*c - a*a)/(2*b*c);
if ((cos_c 0) (cos_a 0))
{
printf("三角形是锐角三角形。\n");
}
else if ((cos_c 0) || (cos_a 0))
{
printf("三角形是钝角三角形\n");
}
else
{
printf("三角形是直角三角形\n");
}
sin_c = sqrt(1- cos_c*cos_c);
area = a*b*sin_c/2;
printf("三角形的面积是%f.\n",area);
}
else
{
printf("三边不能构成三角形\n");
}
}
C语言编程题。速求答案!!~~~~!!!!积分送上~!
#include iostream
// 第一个函数
int getAsc(char ch)
{
if (((ch = '0')(ch = '9')) ||
((ch = 'a')(ch = 'z')) ||
((ch = 'A')(ch = 'Z')))
{
return int(ch);
}
else
{
return 0;
}
}
// 第二个函数
void printBinary(int iData)
{
int i = 31;
char bValue[32] = {0};
do
{
bValue[i] = iData%2;
iData /= 2;
i--;
} while (0 != iData);
for (int j = 0; j 32; j++)
{
std::cout int(bValue[j]);
}
}
// 第三个函数,我不太清楚你所谓的"转换",是不是和上一个一样输出?我是这么实现的
void printOctal(int iData)
{
int i = 10;
char bValue[11] = {0};
do
{
bValue[i] = iData%8;
iData /= 8;
i--;
} while (0 != iData);
for (int j = 0; j 11; j++)
{
std::cout int(bValue[j]);
}
}
// 测试代码,输出字符'9'的asc码,输出'X'的asc码
// 输出1000的二进制和八进制(前面空位用0填充)
int main()
{
int x = getAsc('9');
std::cout x std::endl;
x = getAsc('X');
std::cout x std::endl;
printBinary(1000);
std::cout std:;endl;
printOctal(1000);
std::cout std::endl;
return 0;
}
100分C语言编程题!一个半小时之内求答案,采纳追加50分!
第一题:
#include stdlib.h
#include stdio.h
#include conio.h
#define RMAX 3
#define cMAX 4
void sumRow(int a[][cMAX],int b[])
{
for(int i = 0;i RMAX;i++)
{
b[i] = 0;
for(int j = 0;j cMAX;j ++)
b[i] += a[i][j];
}
}
void main()
{
int i,j,a[RMAX][cMAX],b[RMAX];
clrscr();
randomize();
for(i=0;iRMAX;i++)
for(j=0;jcMAX;j++)
a[i][j]=random(nMAX);
printf("产生随机数后数组如下所示:\n");
for(i=0;iRMAX;i++){
for(j=0;jcMAX;j++)
printf("%d ",a[i][j]);
printf("\n");
}
sumRow(a,b);
printf("每行的和为:\n");
for(i=0;iRMAX;i++){
printf("第%d行和为%d\n",i+1,b[i]);
}
}
-----------------------------------------------
第二题
#include stdlib.h
#include stdio.h
void replace(char *p,char ch)
{
while(*p != '\0'){
if(*p == ch)*p='x';
p ++;
}
}
void main()
{
char str[] = "I am a student in hunan university";
printf("请输入字符:");
char ch = getchar();
replace(str,ch);
printf("替换后的字符串为:%s\n",str);
}
-------------------------------------------
第三题
#include stdlib.h
#include stdio.h
#include string.h
#define LEN 20
void sort(char str[][LEN],int n)
{
for(int i = 0;i n;i ++)
for(int j = 0;j n-1-i;j ++)
if(strcmp(str[j],str[j+1]) 0)
{
char s[LEN];
strcpy(s,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],s);
}
}
void main()
{
char str[][LEN] = {"student","worker","teacher","doctor"};
sort(str,4);
printf("排序后的字符串数组为:\n");
for(int i = 0;i 4;i ++)
printf("%s\n",str[i]);
}