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下调试通过.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)