一题
#include
#include
struct books{
char name[20];
double price;
};
int main(void)
{
struct books s[30];
int n;
int i;
char max[30],min[30];
double p1,p2;
p1=-1;
p2=10000;
printf("Input n: ");
scanf("%d",&n);
for (i=0;i
{
printf("Input the name,price of the %d book: ",i+1);
scanf("%s",s[i].name);
scanf("%lf",&s[i].price);
if (p1
if (p2>s[i].price) { strcpy(min,s[i].name);p2=s[i].price;}
}
printf("The book with the max price:%s,%.1f\n",max,p1);
printf("The book with the min price:%s,%.1f",min,p2);
system("pause");
return 0;
}这是第二题#include
int main()
{
int day[35],a,b,i,j=1;
scanf("%d %d",&a,&b);
for(i=0;i<35+b;i++)
{
day[i]=0;
}
for(i=b;i<35;i++)
{
day[i]=j;
j++;
}
printf(" Sun");
printf(" Mon");
printf(" Tue");
printf(" Wed");
printf(" Thu");
printf(" Fri");
printf(" Sat \n");
for(i=0;i
{
if(day[i]!=0)
printf("%4d",day[i]);
else
printf(" ");
if(i%7==6)
printf("\n");
}
return 0;
}
三题
#include
#include
int main()
{
char a[1000];
int l,i,k,m;
gets(a);
l=strlen(a);
for(i=l-1;i>=0;i--)
{
k=a[i]-'0';
if(k%2==1)
putchar(a[i]);
}
printf(" ");
m=l-1;
for(i=l-1;i>=0;i--)
{
k=a[i]-'0';
if(k!=0)
break;
}
for(;i>=0;i--)
{
k=a[i]-'0';
if(k%2==0)
putchar(a[i]);
}
return 0;
}
四题
#include
int main()
{
int a[10],max,min,i,close=0,less=0,k,j;
double sum,cha;
scanf("%d",&a[0]);
max=min=0;
sum=a[0];
for(i=1;i<10;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
if(a[i]>a[max])
max=i;
if(a[i]
min=i;
}
printf("Maximum: a[%d]=%d\n",max,a[max]);
printf("Minimum: a[%d]=%d\n",min,a[min]);
sum=sum/10;
cha=a[max]-sum;
printf("Average: %.1lf\n",sum);
for(i=0;i<10;i++)
{ if(a[i]
less++;
if(a[i]>sum&&cha>(a[i]-sum))
{cha=a[i]-sum;
close=i;
}
}
printf("Closest to: a[%d]=%d\n",close,a[close]);
printf("Less than: %d\n",less);
for(j=0;j<10;j++)
{
for(i=0;i<10-j;i++)
{
if(a[i]>a[i+1])
{
k=a[i];
a[i]=a[i+1];
a[i+1]=k;
}
}
}
printf("Sort: ");
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
五题
#include
#include
int main()
{
char a[1000];
int l,i,ne[1000],temp,j,min_index;
gets(a);
l=strlen(a);
for(i=0;i
ne[i]=a[i]-'0';
for(i=0;i
{
min_index=i;
for(j=i+1;j
if(ne[j]
if(min_index!=i)
{
temp=ne[i]; ne[i]=ne[min_index]; ne[min_index]=temp;
}
}
for(i=l-1;i>=0;i--)
printf("%d",ne[i]);
printf(" ");
for(i=0;i
{
if(ne[i]!=0)
break;
}
for(;i
printf("%d",ne[i]);
return 0;
}
给分呀呀呀 给分呀 同学
#include
void Prog1()
{
int d, w;
int i, n;
char const * headers[] = {
"Sun",
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
};
printf("Input days in that month and the 1st day in a week: ");
scanf("%d %d", &d, &w);
// Print header
printf("\n");
for ( i = 0; i < 7; ++i ) printf("%4s", headers[i]);
printf("\n");
// Print the space occupations in the first line
w %= 7;
n = w;
while(w-- > 0){
printf("%4s"," ");
}
// Print other days, 7 days in a line
for ( i = 1; i <= d; ++i, ++n ) {
if ( n && n % 7 == 0 ) printf("\n");
printf("%4d",i);
}
printf("\n");
}
void Prog2()
{
unsigned long num1=0, num2=0;
int i = 0;
unsigned long d = 0;
printf("Input a number: ");
scanf("%lu", &d);
while ( d ) {
num1 *= 10;
num1 += d % 10;
++i;
if ( (d /= 10) == 0 ) break;
num2 *= 10;
num2 += d % 10;
++i;
d /= 10;
}
if ( i % 2 ) {
// number of digitals in input number is odd like 1234567,
// then the num1 which contains 1,3,5,7 is the odd part
printf("%lu %lu\n", num1, num2);
} else {
// When number of digitals is even, like 12345678,
// then the part1 which contains 2,4,6,8 is the even part
printf("%lu %lu\n", num2, num1);
}
}
void Prog3()
{
unsigned int a[10], num, t;
int i,j,count;
int sorted[10];
unsigned long sum;
printf("Input 10 positive integers: ");
for ( sum = 0, i = 0; i < 10; i++ )
{
scanf("%u", &num);
// Store number
a[i] = num;
// sum of numbers
sum += num;
// Insert index of number to sorted index-array
for ( j = i, sorted[j] = i; j > 0 && a[sorted[j]] < a[sorted[j-1]]; --j ) {
t = sorted[j];
sorted[j] = sorted[j-1];
sorted[j-1] = t;
}
}
printf("Maximum: a[%d]=%u\n",sorted[9], a[sorted[9]]);
printf("Minimum: a[%d]=%u\n",sorted[0], a[sorted[0]]);
printf("Average: %lu.%lu\n",sum/10, sum%10);
for ( count=0, i = 0; i < 10 && a[sorted[i]] * 10 < sum; ++i, ++count ) ;
while ( a[sorted[i]] * 10 <= sum ) ++i;
printf("Closest to: a[%d]=%u\n", sorted[i], a[sorted[i]]);
printf("Less than: %d\n", count);
printf("Sort: ");
for ( i = 0; i < 9; ++i ) printf("%u ", a[sorted[i]]);
printf("%u\n", a[sorted[9]]);
}
void Prog4()
{
unsigned long num;
char a[16]={0}, d, t;
int n = 0, i;
printf("Input a positive integer: ");
scanf("%lu", &num);
while ( num ) {
d = num % 10;
// Online insertion sort
for ( i = n, a[i] = d; i > 0 && a[i] < a[i-1]; --i ) {
t = a[i];
a[i] = a[i-1];
a[i-1] = t;
}
num /= 10;
++n;
}
if ( n == 0 ) {
printf("0 0\n");
return;
}
// Print maximum integer
for ( i = n - 1; i >= 0; --i ) printf("%c", (char)(a[i]+'0'));
printf(" ");
// Jump over leading '0's
for ( i = 0; i < n && a[i] == 0; ++i );
// Print minimum integer
for ( ; i < n; ++i ) printf("%c", (char)(a[i]+'0'));
printf("\n");
}
int main()
{
Prog1();
Prog2();
Prog3();
Prog4();
return 0;
}
运行结果可以看这里
http://ideone.com/eGwYX
先给你第一个:
#include "stdio.h"
int main()
{
int i,j,k,x,y,z;
i=0;j=0;k=0;x=0;y=0;z=0;
int a[12]={31,29,31,30,31,30,31,31,30,31,30,31};
int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};
printf("请输入年份:");
scanf("%d",&x);
while(x<=0||x>=10000)
{
printf("请输入年份:");
scanf("%d",&x);
}
printf("请输入月份:");
scanf("%d",&y);
while(y<=0||y>12)
{
printf("请输入月份:");
scanf("%d",&y);
}
printf("请输入几号:");
scanf("%d",&z);
while(z<=0||z>31)
{
printf("请输入几号:");
scanf("%d",&z);
}
if(x%4==0||(x%100!=0&&x%400==0))
{
if(y==1)
{
j = z;
}else
{
for(k=y-2;k>=0;k--)
{
i+=a[k];
j=i+z;
}
}
}else
if(y==1)
{
j = z;
}else
{
for(k=y-2;k>=0;k--)
{
i+=b[k];
j = i+z;
}
}
printf("%d\n",j);
}
第4题
#include
#include
#include
#include
using namespace std;
int main()
{
int s[100];
long int i;
int j=0;
cin>>i;//输入长整数
while(1)
{
s[j++]=i%10;//得到每一位数字
i=i/10;
if(!i) break;
}
sort(s,s+j,greater
for(i=0;i
if(!s[0])
{
cout<<0<<" ";
break;
}
cout<
}//输出最大的
cout<<" ";
int tag=0;
for(i=j-1;i>=0;i--)
{
if(s[i])
{
tag=1;
cout< }
}//输出最小的
if(!tag) cout<<0;
cout<<"\n";
return 0;
}
同学上大的把...谢啦..正要找呢