C语言程序编写(希望大神帮忙做下谢啦!)

C语言程序编写(希望大神帮忙做下谢啦!),第1张

编拦租程1

void main()

{

int n

printf("请告培输入一个整数:")

scanf("%d",&n)

if(n%3==0&&n%5==0&&n%7==0)

printf("\n此数能被3,5,7整简友兆除\n")

else

printf("\n此数不能被3,5,7整除\n")

}

编程2#include "stdio.h"

void main()

{

long income

double fee=0.

printf("input income:")

scanf("%ld",&income)

if(income>2000)

{

fee+=(income-2000)*.2

income=2000

}

switch((income/400))

{

case 5:

case 4:

case 3:

fee+=(income-1200)*.08

income=1200

case 2:

fee+=(income-800)*.05

default:

fee+=0.

}

printf("tax fee is %.2lf.\n",fee)}编程4#include <stdio.h>

#include <stdlib.h>

void main() {

int n, i

printf("请输入n:")

scanf("%d", &n)

int sum = 0

for(i=1i<=ni++) sum += i

printf("和是: %d\n", sum)

}

#include <stdio.h>

/*

3、用一维数组解如下问题:读取20个在10到100之间的不重复的整数。每读取一个值时,喊掘如果它与已读取的值

不重复,就打印该值。用尽可能小的数组解决这个问题。

*/

void noRepeat() {

int a[20]

int i

int j

int count = 0

printf("\n请郑键核输入20个10-100的整数:\n")

for (i=0i<20i++) {

scanf("%d",&a[count])

if (a[count]<10 || a[count]>100) {

printf("输入错误!\n")

i--

continue

}

for (j=0j<countj++) {

if (a[count] == a[j]) {

break

}

}

if (j == count) {

printf("[%d]\n",a[count])

count++

}

}

}

/*

5、Eratoshenes筛选是一种寻找素数的方法,该方法表述如下:

1)创建一个一维数组,把所有的元素初始化为1(表示真),下标为素数的元素保持1不变,其它下标的元素

最终被置为0

2)从数组下标2出发,每次发现值为1的数组元素时,则看其后的所有元素,把下标是它们倍数的那些元素置

为0。例如,对下标2来说,凡是2的倍数的下标(4,6,8,10,···)都将其元素置为0,对下标3来说,

凡是否的倍数的下标(6,9,12,15,···)将其元素置为0。

当以上过程结束后,仍为1的数组元素的下标就是素数,将这些下标打印输出即可。编亮伏写程序,

用含有1000个元素的数组确定并打印出1~999之间的所有素数

*/

void Eratoshenes() {

int a[1000]

int i

int j

for (i=2i<1000i++) {

a[i] = 1

}

for (i=2i<1000i++) {

if (a[i] == 1) {

for (j=2j*i<1000j++) {

a[j*i] = 0

}

}

}

for (i=2i<1000i++) {

if (a[i] == 1) {

printf("%d ",i)

}

}

}

/*

7、学生成绩统计。某班共6名学生,学习6门功课(数学分析,高等代数,大学物理,计算导论,经济学,英语),

每门功课有平时,期中和期末三项成绩,按平时占20%,期中占30%,期末占50%,求每人每门功课的平时成绩和

各个人6门功课的平均成绩及总平均成绩,最后要求按各人平均成绩的高低排序并打印成表格

*/

void func_average(int s[6][6][3], int a[6]){

int i

int j

float temp

for (i=0i<6i++) {

temp = 0

for (j=0j<6j++) {

temp += s[i][j][0] * 0.2f + s[i][j][1] * 0.3f + s[i][j][2] * 0.5f

}

a[i] = (int)(temp / 6)

}

}

void func_score() {

int score[6][6][3] = {

{{10,10,10},{10,10,10},{10,10,10},{10,10,10},{10,10,10},{10,10,10}},

{{20,20,20},{20,20,20},{20,20,20},{20,20,20},{20,20,20},{20,20,20}},

{{30,30,30},{30,30,30},{30,30,30},{30,30,30},{30,30,30},{30,30,30}},

{{40,40,40},{40,40,40},{40,40,40},{40,40,40},{40,40,40},{40,40,40}},

{{50,50,50},{50,50,50},{50,50,50},{50,50,50},{50,50,50},{50,50,50}},

{{60,60,60},{60,60,60},{60,60,60},{60,60,60},{60,60,60},{60,60,60}}

}

char name[6][20] = {"abc","xyz","def","ghi","aaa","bbb"}

int average[6] = {0}

int index[6]

int i

int j

int temp

func_average(score,average)

for (i=0i<6i++) {

index[i] = 0

for (j=0j<6j++) {

if (average[index[i]]!=-1 &&average[j]>=average[index[i]]) {

index[i] = j

}

}

average[index[i]] = -1

}

func_average(score,average)

for (i=0i<6i++) {

printf("%4s",name[index[i]])

for (j=0j<6j++) {

temp = (int)(score[index[i]][j][0] * 0.2f +

score[index[i]][j][1] * 0.3f + score[index[i]][j][2] * 0.5f)

printf("%3d",temp)

}

printf("%3d\n",average[index[i]])

}

}

/*

8、已知一个有限输入字符集合?={a,b},写一个程序能够识别集合L={anbn:0≤n≤N}。

说明:该问题实质上是判定输入字符串是否呈现aa ··· abb ··· b (a,b均为n个) 。

设字符串string有c个字符,则c=2n,且string[1]=··· =string[n]=a, string[n+1]= ···

=string[2n]=b (或进一步有这样的关系string[1],string[2]··· ,string[n]={a}, string[n+1],

string[n+2],··· ,string[2n]={b})。

*/

void f(char *str) {

int i = 0

int j = 0

char a

char b

char *p

a = str[0]

for (i=0,p=str*p!=0p++,i++) {

if (a != *p) {

b = *p

break

}

}

for (j=0*p!=0p++,j++) {

if (b != *p) {

printf("不属于集合!\n")

return

}

}

if (i == j) {

printf("属于集合!\n")

} else {

printf("不属于集合!\n")

}

}

void main() {

// Eratoshenes()

// noRepeat()

// func_score()

f("cccdddcc")

}

程序在vc6.0下调试通过.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12247997.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存