当前位置:首页 » 编程软件 » 编程基础题

编程基础题

发布时间: 2022-05-08 18:24:08

1. 求道c语言基础编程

//第一题:
#include<stdio.h>
main()
{
int
a,b,c,t;
scanf("%d%d%d",&a,&b,&c);
//输入三个数a,b,c
if(a<b)
{
t=a;a=b;b=t;
}
if(a<c)
{
t=a;a=c;c=t;
}
if(b<c)
{
t=b;b=c;c=t;
}
printf("%d>%d>%d\n",a,b,c);
}
//第二题:
#include<stdio.h>
#include<math.h>
void
main()
{
float
a,b,c,s,k;
printf("请输入三边的值:");
scanf("%f%f%f",&a,&b,&c);
k=(a+b+c)/2.0;
s=sqrt(k*(k-a)*(k-b)*(k-c));
printf("面积为:%.3f\n",s);
}
这两个题目很简单啊!
不知道是否合你要求??
呵呵,给我分吧!

2. 求解一道C语言基础编程题。。

intbase(intk,chars[])//按定义,k是进制(2~16),s是输入的字符串

{

int len=0,sum=0; //len 指s字符串长度,sum指转换后的k进制数

int i,j,t,n;

while (s[len]!='\0') len++; //计算s数组长度,也就查看用户从键盘输入了多少字符

i=len-1; //从最高位开始,也就是从最右侧开始计算,比如s=1234ab,先从b开始计算

while (s[i]!='\0') //逐个读取字符串s,第i位的具体字符值,s[i]是否有效

{

n=0; //s[i]是字符(char),s[i]转换成10进制对应的值

if (s[i]>='0'&&s[i]<='9') //查ascii码表

n=s[i]-48; //48即字符 '0'

else if (s[i]>='A'&&s[i]<='F') //A--F用来代表10进制下的10~15

n=10+s[i]-'A'; //s[i]是字符(char),s[i]转换成10进制对应的值

t=1;

for (j=0; j<len-i-1; j++) t=t*k;

/* //以上语句等于如下形式,s[i]对应的倍率,假设k=10,就好理解

t=1; //个位,即i=len-1时

t=1*k; //十位 即i=len-2时

t=1*k*k; //百位

t=1*k*k*k; //千位

.....

*/

sum += n*t; //合计,个+十+百+千+...

i--;

}

return (sum);

}

main()

{

int sz;

char str[20];

scanf("%d %s",&sz,str);

if (sz<2||sz>16)

printf("输入错误。\n");

else

printf("%d\n",base(sz,str));

}

3. C语言编程基础题

代码文本:

#include "stdio.h"

int main(int argc,char *argv[]){

int i,j,k,t,n;

printf("Enter n(int 0<n<14)... ");

if(scanf("%d",&n)!=1 || n>13 || n<1){

printf("Input error, exit... ");

return 0;

}

for(k=i=1;i<=n;i++){

for(t=(n-i)*3,j=0;j<t;putchar(' '),j++);

if(i&1)

for(j=0;j<i;printf("%3d",k++),j++);

else

for(k+=i,j=1;j<=i;printf("%3d",k-j++));

putchar(' ');

}

return 0;

}

4. 编程基础题

a=3
a+=a-=a*a
分解成 a-=(a*a)得a= a-(a*a)=3-9=-6
以及 a+=a得a=a+a=-12

x=3,y=3
++x||++y ,因为||为或运算,++x值为4即为真,所以整个表达式为真,短路求值后++y不执行,所以y的值依然是3。

5. c语言编程基础题,初学者,求解答

这是一个冒泡法整理数组的程序,输入10个数字,然后程序结果会让这10个数字从小到大显示
输入部分,i=0,输入a0;i=1,输入a1;····i=9,输入a9
整理部分,j=0,i=0,如果a0大于a1,互换位置;j=0,i=1,如果a1大于a2,互换位置;···j=8,i=0,如果a0大于a1,互换位置
输出部分,a0到a9依次显示

6. c语言编程基础题

#include<stdio.h>

intmain(void)
{
inta,b;
for(a=1;a<=100/5;++a)
for(b=1;b<=100/3;++b)
if(a+b+3*(100-5*a-3*b)==100)
printf("%d%d%d ",a,b,3*(100-5*a-3*b));
return0;
}

7. 求解一道C语言基础编程题。

#include <stdio.h>

#define N 60 //宏定义便于替换和检测

void Scanf(float *a,int n) //输入函数

{ scanf("%f",&a[n]);}

void sort(float *a,int n) //排序函数{ int i,j; float t; for(i=0;i<n-1;i++) //选择排序法 { for(j=i+1;j<n;j++) { if(a[i]>a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } } }}void Printf(float *a,int n) //输出函数{ printf("%d# %.2fm ",n+1,a[n]);//输出格式}int main (void){ float a[N]; int i; for(i=0;i<N;i++) Scanf(a,i); sort(a,N); for(i=0;i<N;i++) Printf(a,i);}

望采纳

8. 基础编程题

LZ想要的是这种答案吧。。。。
//-------------------------------第一题
#include <stdio.h>
#include "e:\myc\zylib\zylib.h"
STRING GetString(STRING prompt);
double GetReal(STRING prompt);
int main()
{
double bookprice;
STRING bookname;
bookname=GetString("请输入字符串:");
bookprice=GetReal("请输入实数:");
printf("字符串为:%s\n",bookname);
printf("实数为:%.2f\n",bookprice);
}
STRING GetString(STRING prompt)
{
STRING name;
printf("%s",prompt);
name=GetStringFromKeyboard();
return name;
}
double GetReal(STRING prompt)
{
double price;
printf("%s",prompt);
price=GetRealFromKeyboard();
return price;
}
//-------------------------------------第二题
#include <stdio.h>
#include "e:\myc\zylib\zylib.h"
BOOL IsPrime(int n);
int main()
{
int n;
printf("请输入一个整数:");
scanf("%d",&n);
if(n>2)
if(IsPrime(n))printf("%d是素数\n",n);
else printf("%d不是素数\n",n);
else printf("数据非法\n");
return 0;
}
BOOL IsPrime(int n)
{
int i;
for(i=2;i<n;i++)
if(n%i= =0) return FALSE;
return TRUE;
}
//--------------------------------第三题
#include <stdio.h>
#define TRUE 1
int gcd(int x,int y);
int main()
{
int m,n,max;
printf("请输入两个正整数:");
scanf("%d %d",&m,&n);
max=gcd(m,n);
printf("最大公约数为:%d\n",max);
return 0;
}
int gcd(int x,int y)
{
int r;
while(TRUE)
{
r=x%y;
if(r==0)break;
x=y;
y=r;

}
return y;
}
//--------------------------------第四题
#include <stdio.h>
#include "e:\myc\zylib\zylib.h"
typedef enum{sun,mon,tue,thi,wen,fri,sat}WEEKDAY;//定义枚举类型
int GetInteger(STRING prompt);//输入一下整数
int Count(int year,int month);//计算某年某月之前到2007年1月1日的天数
BOOL IsLeapYear(int n);//判断某年是否是闰年
int month_day(int year,int month);//计算某个月的天数
void print(int year,int month,int total);//打印某年某月的日历
void print1(WEEKDAY weekday);//打印某月的第1天
int main()
{
int year,month,total;
year=GetInteger("please input year:");
if(year<2007)
PrintErrorMessage(FALSE,"年份小于2007,错误\n");
month=GetInteger("please input month:");
total=Count(year,month);
print(year,month,total);
}
int GetInteger(STRING prompt)
{
int t;
printf("%s",prompt);
t=GetIntegerFromKeyboard();
return t;
}
int Count(int year,int month)
{
int s,i;
s=0;
for(i=2007;i<year;i++)
if(IsLeapYear(i))s+=366;
else s+=365;
for(i=1;i<month;i++)
s+=month_day(year,i);
return s;
}
BOOL IsLeapYear(int n)
{
return n%4==0&&n%100!=0||n%400==0;
}
int month_day(int year,int month)
{
int day;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 9:
case 10:
case 12:day=31;break;
case 2:day=28+IsLeapYear(year);break;
default:day=30;
}
return day;
}
void print(int year,int month,int total)
{
WEEKDAY weekday;
const WEEKDAY first=mon;
int i,day;
printf("%d-%d canlendar\n",year,month);
printf("-----------------------------------\n");
printf(" sun mon tue thi wen fri sat\n");
printf("-----------------------------------\n");
day=month_day(year,month);
for(i=1;i<=day;i++)
{
weekday=(WEEKDAY)((total+i+first-1)%7);
if(i==1)print1(weekday);
else if(weekday==sat)
printf("%4d\n",i);
else printf("%4d",i);
}
printf("\n------------------------------------\n");
}
void print1(WEEKDAY weekday)
{
if(weekday==0)printf("%4d",1);
else if(weekday==1)printf("%8d",1);
else if(weekday==2)printf("%12d",1);
else if(weekday==3)printf("%16d",1);
else if(weekday==4)printf("%20d",1);
else if(weekday==5)printf("%24d",1);
else if(weekday==6)printf("%28d\n",1);
}
//---------------------------------------
上面的一些文件路径你自己改了,唉,其实我自己给你写的那些算法更好,。

9. C#编程基础题

Soeasy,Liketorchtellyourway.IfyouwanttoLearnC#,youhadbetterdoityourself.

10. 编程基础题:分类求和

#include<stdio.h>

#include<malloc.h>

int main (void)
{
int n,i,j=0,k=0,sum1=0,sum2=0;
int *p;
scanf("%d",&n);
p=(int*)malloc(sizeof(int)*n);
for( i=0;i<n;i++)
scanf("%d",&p[i]);
for(i=0;i<n;i++)
{
if(p[i]>0)
{
sum1+=p[i];
j++;
}
if(p[i]<0)
{
sum2+=p[i];
k++;
}
}
printf("%3d%3d%3d%3d",j,k,sum1,sum2);
return 0;
}
手机编写的代码,没有编译,自己编译一下吧,应该能通过,稍微修改了一下,第一步输入数组元素个数n,然后就可以了。

热点内容
交叉编译优化 发布:2025-05-14 03:48:52 浏览:531
动图在线压缩 发布:2025-05-14 03:35:24 浏览:132
w7共享无法访问 发布:2025-05-14 03:35:24 浏览:482
为什么微信会出现账号密码错误 发布:2025-05-14 03:03:30 浏览:692
幻影脚本官网 发布:2025-05-14 03:01:13 浏览:826
servlet的webxml怎么配置 发布:2025-05-14 02:51:46 浏览:772
怎么取消手势密码 发布:2025-05-14 02:51:11 浏览:639
openvpn搭建vpn服务器搭建 发布:2025-05-14 02:47:52 浏览:998
密码忘了从哪里找 发布:2025-05-14 02:39:09 浏览:548
我的世界什么服务器有前途 发布:2025-05-14 02:30:31 浏览:528