⑴ 編寫程序,輸入周一至周五中的任意一天,屏幕顯示一條不同的短語,短語內容自擬。c語言
#include <stdio.h>
int main()
{
int day=0;
printf("輸入星期幾(要求輸入1—7中的一個整數,例如星期六,輸入 6)\n");
scanf("%d",&day);
switch(day)
{
case 1:printf("星期一快樂!");break;
case 2:printf("星期二快樂!");break;
case 3:printf("星期三快樂!");break;
case 4:printf("星期四快樂!");break;
case 5:printf("星期五快樂!");break;
case 6:printf("星期六快樂!");break;
case 7:printf("星期日快樂!");break;
default:printf("跟你說了要輸入1—7中的一個整數");break;
}
printf("\n");
return 0;
}
⑵ 用c語言編程,各位大蝦幫幫忙
#include<stdio.h>
void main()
{
int hour,week;
int money;
float tax;
printf("請輸入星期與工作時間:");
scanf("%d%d",&hour,&week);
switch(week)
{
case 1:
money=20*hour;
break;
case 2:
money=20*hour;
break;
case 3:
money=20*hour;
break;
case 4:
money=20*hour;
break;
case 5:
money=20*hour;
break;
case 6:
money=20*hour*3;
break;
case 7:
money=20*hour*3;
break;
}
tax=(float)0.08*money;
printf("該日的稅前工資為:%d\n",money);
printf("稅金為:%.2f\n",tax);
}
⑶ c語言編寫一個程序計算長途電話費。電話費根據以下費率計算: 1)周一到周五,上午八點到下午六點之間
#include <stdio.h>
int main()
{
char str[2];
int b,c,d,flag=0;
double e=0;
scanf("%s %d %d %d",&str,&b,&c,&d);
if((str[0]=='m' ||str[0]=='M') &&(str[1]=='O' ||str[1]=='o'))
flag=1;
if((str[0]=='t' ||str[0]=='T') &&(str[1]=='u' ||str[1]=='U'))
flag=1;
if((str[0]=='w' ||str[0]=='W') &&(str[1]=='e' ||str[1]=='E'))
flag=1;
if((str[0]=='T' ||str[0]=='t') &&(str[1]=='H' ||str[1]=='h'))
flag=1;
if((str[0]=='f' ||str[0]=='F') &&(str[1]=='r' ||str[1]=='R'))
flag=1;
if((str[0]=='S' ||str[0]=='s') &&(str[1]=='A' ||str[1]=='a'))
flag=2;
if((str[0]=='s' ||str[0]=='S') &&(str[1]=='u' ||str[1]=='U'))
flag=2;
while(str!="\0")
{
if(flag==2)
e=d*0.15;
if(flag==1 && (60*b+c>=0 && 60*b+c<=480 && 60*b+c+d<=480 ))
e=d*0.25;
if(flag==1 && (60*b+c>=1080 && 60*b+c<=1440 && 60*b+c+d<=1440 ))
e=d*0.25;
if(flag==1 && (60*b+c>480 && 60*b+c<1080 && 60*b+c+d<1080 ))
e=d*0.4;
if(flag==1 && (60*b+c>=0 && 60*b+c<=480 && 60*b+c+d>=480 && 60*b+c+d<=1080 ))
e=(480-(60*b+c))*0.25+(d-(480-(60*b+c)))*0.4;
if(flag==1 && (60*b+c>=0 && 60*b+c<=480 && 60*b+c+d>=1080 && 60*b+c+d<=1440 ))
e=(480-(60*b+c))*0.25+(1080-480)*0.4+(d-(480-(60*b+c))-(1080-480))*0.25;
if(flag==1 && (60*b+c>480 && 60*b+c<1080 && 60*b+c+d>=1080 && 60*b+c+d<=1440 ))
e=(1080-(60*b+c))*0.4+(d-(1080-(60*b+c)))*0.25;
printf("%lf\n",e);
scanf("%s %d %d %d",&str,&b,&c,&d);
}
return 0;
}
⑷ 需要c語言大神啊,,,,例如,宿舍排值日表,宿舍6個人住,星期六星期日不算,星期一到星期五輪流排值
#include<stdio.h>
int main()
{
int i,m,n=1;
for(i=1;i<=40;i++)
{
printf("第%d周:\n",i);
for(m=1;m<=5;m++)
{
printf("星期%d:%d號床值日\n",m,n);
n++;
if(n==7)
n=1;
}
}
return 0;
}
//40周的安排
⑸ 急急!!用C語言編課程表,要求:每星期5天,每天不超過6節課,有語文、數學、英語、政治、歷史、音樂
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define DAYS_OF_A_WEEK 5
#define MAX_CLASSES_A_DAY 6
#define MAX_CLASS_NAME_LEN 10
#define TOTAL_CLASSESS_TYPE_NUM 5
typedef struct
{
char class_name[MAX_CLASS_NAME_LEN];
int class_num_per_week;
}Class;
Class class_data[]=
{
{"語文",3},{"數學",3},{"英語",3},{"政治",2},{"歷史",2},{"音樂",2}
};
char week_days_name[][10] ={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
char class_arrange_table[MAX_CLASSES_A_DAY][DAYS_OF_A_WEEK][MAX_CLASS_NAME_LEN]={0};
int main(int argc, char *argv[])
{
int i,j,k;
int row,col;
srand(time(NULL));
for(i=0;i<TOTAL_CLASSESS_TYPE_NUM;i++)
{
for(j=0;j<class_data[i].class_num_per_week;j++)
{
row = rand()% DAYS_OF_A_WEEK ;
col = rand()% MAX_CLASSES_A_DAY;
while(strlen(class_arrange_table[row][col]) != 0)
{
row = rand()% DAYS_OF_A_WEEK ;
col = rand()% MAX_CLASSES_A_DAY;
}
strcpy(class_arrange_table[row][col],class_data[i].class_name);
}
}
printf("%4s","");
for(i=1;i<=DAYS_OF_A_WEEK;i++)
{
printf("|%10s",week_days_name[i]);
}
printf("\n");
for(i=0;i<MAX_CLASSES_A_DAY;i++)
{
for(j=0;j<4+DAYS_OF_A_WEEK*10+DAYS_OF_A_WEEK;j++){ printf("-"); }
printf("\n");
printf("%4d",i+1);
for(j=0;j<DAYS_OF_A_WEEK;j++)
{
printf("|%10s",class_arrange_table[i][j]);
}
printf("\n");
}
for(j=0;j<4+DAYS_OF_A_WEEK*10+DAYS_OF_A_WEEK;j++){ printf("-"); }
printf("\n");
return 0;
}
⑹ C語言編程輸入數字1到7 分別輸出周一到周日的英文單詞
//這個就不用注釋了吧
#include
"stdio.h"
void
main()
{
int
i;
printf("輸入1~7其中一個數字:");
scanf("%d",&i);
switch(i)
{
case
1:
printf("Monday\n");break;
case
2:
printf("Tuesday\n");break;
case
3:
printf("Wednesday\n");break;
case
4:
printf("Thursday\n");break;
case
5:
printf("Friday\n");break;
case
6:
printf("Saturday\n");break;
case
7:
printf("Sunday\n");break;
default:
printf("April
Fools'
Day\n");break;
}
}
⑺ c語言輸出字母星期一到星期日
#include<stdio.h>
enumweekday{
MON=1,TUE,WIN,THE,FRI,THI,SUN
};
intmain(intargc,char*argv[]){
inti;
charday[][3]="{MON},{TUE},{WIN},{THE},{FRI},{THI},{SUN}";
for(i=MON;i<=SUM,i++)
printf("%s ",day[MON-1][0]);
return0;
}
//不懂追問
⑻ C語言程序設計求助,求設計一個程序,要求輸入1-7的整數,對應輸出星期一~星期天,最好附上思路,謝謝
#include<stdio.h>void main()
{
int i;
printf("請輸入1-7數字 ");
scanf("%d",&i);
switch(i)
{
case 1: printf("今天星期一");break;
case 2: printf("今天星期二");break;
case 3: printf("今天星期三");break;
case 4: printf("今天星期四");break;
case 5: printf("今天星期五");break;
case 6: printf("今天星期六");break;
case 7: printf("今天星期天");break;
}
}
switch語句應該學了吧 直接用switch語句進行選擇就行了 運行結果:
⑼ C語言的簡單日歷代碼,求大神幫忙!!
#include<stdio.h>
#include <string.h>
#include <time.h>
#include <math.h>
#include <windows.h>
int year , month , day ;
int day_of_month[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
//char wek[7]={'周日','周一','周二','周三','周四','周五','周六'};
int current_year,current_month,current_day;
/************************************通用關鍵函數**************************************************/
void cls_screen()
{
printf("請按任意鍵返回!\n");
getchar();
getchar();
system("cls");
}
void get_current_time() //獲取當前時間
{
time_t timep;
struct tm *p;
time(&timep);
p = gmtime(&timep);
current_year=1900+p->tm_year;
current_month=1+p->tm_mon;
current_day=p->tm_mday;
}
int judgement (int y)
{
if (y % 400 == 0 || (y % 100 !=0 && y %4 ==0))
return 1 ;
else return 0 ;
}
int show_week (int year , int month , int day)
{
/*
公式:w=(y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1)%7
*/
int w ,k; //記錄周幾
int year_last=year %100,c=year/100 , m = month;
if (month==1 )
{
year_last-=1 ;
m=13 ;
}
else if (month==2)
{
year_last-=1;
m=14;
}
w = (year_last + year_last/4 + c/4 - 2*c +26*(m+1)/10+day-1); // abs 絕對值
if (w<0)
{
k=(w%7+7)%7;
}
else k=w%7;
return k ;
}
/************************************第一部分**************************************************/
void print_year (int year)
{
int i , k ,x ,first_week;
printf ("請輸入想要查詢的年月(格式如2012):");
scanf ("%d",&year);
printf("=======================%d年===========================\n",year);
printf("\n");
if (judgement(year))
{
day_of_month[1]=29;
}
else day_of_month[1]=28;
for (i=1 ; i <13 ; i++)
{
first_week = show_week(year,i,1);
printf("=====================%d月日歷如下========================\n",i);
printf ("Sun\tMon\tTue\tWed\tThu\tFri\tSat\n");
for (x=1;x<=first_week;x++)
{
printf("\t");
if (x%7==0) printf ("\n");
}
for (k=1;k<=day_of_month[i-1];k++)
{
printf("%d\t",k);
if (x%7==0) printf ("\n");
x++;
}
printf("\n");
printf("\n");
printf("\n");
}
}
/************************************第二部分**************************************************/
void print_year_month ()
{
int k ,x ,first_week;
printf ("請輸入想要查詢的年月(格式如2012 12):");
do
{
scanf ("%d %d",&year,&month);
if (month<1||month>12)
{
printf("您輸入的月份有誤哦~請輸入正確的月份\n");
printf ("請輸入想要查詢的年月(格式如2012 12):");
}
}while(1>month||month>12);
printf("=====================%d年%d月======================\n",year,month);
if (judgement(year))
{
day_of_month[1]=29;
}
else day_of_month[1]=28;
first_week = show_week(year,month,1);
printf ("Sun\tMon\tTue\tWed\tThu\tFri\tSat\n");
for (x=1;x<=first_week;x++)
{
printf("\t");
if (x%7==0) printf ("\n");
}
for (k=1;k<=day_of_month[month-1];k++)
{
printf("%d\t",k);
if (x%7==0) printf ("\n");
x++;
}
printf("\n");
}
/************************************第三部分**************************************************/
int year_before_sumdays (int year,int month, int day)
{
int days=0 ,i,judgement1;
int temp_day=0 ,sum_days; //
//printf ("%d,%d\n",current_year,current_month);
judgement1=judgement(year);
/*===================比當前少=====================*/
if (year < current_year )
{
for (i = year+1;i < current_year ;i++)
{
if (judgement(i))
{
days=days+356;
}
else days+=355;
}
for (i = month+1;i<=12;i++)
{
days=days+day_of_month[i-1];
}
days = days + day_of_month[month-1]-day; //指定日子距離當年結束還有多少天
//printf("去年還有%d\n",days);
for (i = 0;i < current_month-1;i++ )
{
if (judgement1)
{
day_of_month[1]=29;
}
temp_day = temp_day + day_of_month[i];
}
//當前日子是這一年的多少天
temp_day = temp_day + current_day;
//printf("今天是第%d天\n",temp_day);
sum_days=temp_day + days ;
}
/*===================比當前多=====================*/
if (year > current_year )
{
for (i =current_year+1;i < current_year ;i++)
{
if (judgement(i))
{
days=days+356;
}
else days+=355;
}
for (i = current_month+1;i<=12;i++)
{
days=days+day_of_month[i-1];
}
days = days + day_of_month[month-1]-current_day; //指定日子距離當年結束還有多少天
//printf("去年還有%d\n",days);
for (i = 0;i <month-1;i++ )
{
if (judgement1)
{
day_of_month[1]=29;
}
temp_day = temp_day + day_of_month[i];
}
//當前日子是這一年的多少天
temp_day = temp_day + day;
//printf("今天是第%d天\n",temp_day);
sum_days=temp_day + days ;
}
/*===================比當前一樣=====================*/
if (year == current_year )
{
if(month <current_month)
{
for (i=month+1;i<current_month;i++)
{
if (judgement1)
{
day_of_month[1]=29;
}
days = days + day_of_month[i];
}
sum_days = days + current_day + day_of_month[month-1] - day ;
}
if (month>current_month)
{
for (i=current_month+1;i<month;i++)
{
if (judgement1)
{
day_of_month[1]=29;
}
days = days + day_of_month[i];
}
sum_days = days + day + day_of_month[month-1] - current_day ;
printf("%d\n",days);
}
if (month==current_month)
{
sum_days= abs(day-current_day);
}
}
return sum_days ;
}
void print(int year,int month,int day)
{
int week;
printf ("請輸入想要查詢的年月(格式如2012 12 12 ):");
do
{
scanf ("%d %d %d",&year,&month,&day);
if (judgement(year))
{
day_of_month[1]=29;
}
printf("\n");
if (day<=0 || day >day_of_month[month-1])
printf ("%d月沒有%d,請重新輸入(格式如2012 12 12 ):",month,day);
}while(day<=0 || day >day_of_month[month-1]);
week=show_week (year,month ,day);
printf("\n");
switch(month)//判斷查找天是否陽歷節日先由月份判斷是否有節日的月份再由日判斷是否為節日
{
case 1:switch(day)
{
case 1:printf("元旦") ;break;
default:printf("不是陽歷節日");
}break;
case 2:switch(day)
{
case 14:printf("情人節(Valentines Day)");break;
default:printf("不是陽歷節日");
}break;
case 3:switch(day)
{
case 8:printf("婦女節¨(Women's Day)");break;
case 12:printf("植樹節(Arbor Day)");break;
default:printf("不是陽歷節日");
}break;
case 4:switch(day)
{
case 1:printf("愚人節(April Fools Day)");break;
case 5:printf("清明節(Tomb-sweeping Day)");break;
default:printf("不是陽歷節日");
}break;
case 5:switch(day)
{
case 1:printf("勞動節(Labor Day)");break;
case 4:printf("中國青年節(Chinese Youth Day)");
default:printf("不是陽歷節日");
}break;
case 6:switch(day)
{
case 1:printf("兒童節(Children's Day)");break;
default:printf("不是陽歷節日");
}break;
case 8:switch(day)
{
case 1:printf("建軍節(the Army's Day)");break;
default:printf("不是陽歷節日");
}break;
case 9:switch(day)
{
case 10:printf("教師節(Teacher's Day)");break;
default:printf("不是陽歷節日");
}break;
case 10:switch(day)
{
case 1:printf("國慶節(National Day)");break;
case 31:printf("萬聖節(Helloween Day)");break;
default:printf("不是陽歷節日");
}break;
case 12:switch(day)
{
case 25 :printf("聖誕節(Christmas Day)");break;
default:printf("不是陽歷節日");
}break;
}
printf("\n");
printf("%d年%d月%d號是:",year,month,day);
switch(week)//判斷所查找天是星期幾
{
case 0:printf("Sunday");break;
case 1:printf("Monday");break;
case 2:printf("Tuesday");break;
case 3:printf("Wednesday");;break;
case 4:printf("Thursday");break;
case 5:printf("Friday");break;
case 6:printf("Saturday");break;
}
printf("\n");
printf("距離今天有%d天\n",year_before_sumdays ( year, month, day));
printf("\n");
}
/********************************************************************************************/
void main ()
{
int choice,year,month,day,flag=1;
char c , k;
for(;1;)//顯示程序菜單,為永真,每次查找完回到程序菜單ì
{
printf("===================================菜單選項===================================\n");
printf("請選擇:\n");
printf("* * * * * * * * 1.查找某一年的年歷 * * * * * * * *\n");
printf("* * * * * * * * 2.查找某一月的月歷 * * * * * * * *\n");
printf("* * * * * * * * 3.查找某一天 * * * * * * * *\n");
printf("* * * * * * * * 0.退出 * * * * * * * *\n");
printf("=========================================================
⑽ c語言 指針數組列印星期一到星期日
# include <stdio.h>
void printstr(char **p);
int main()
{
char i;
char str[100];
char *num[]={"monday","tuesday","wednesday","thursday","friday","saturday","sunday"};
char **p;
p=num;
// printf("請輸入1到7之間的數字 ");
printstr(p);
}
void printstr(char **p)
{
char i;
_start:
printf("請輸入1到7之間的數字 ");
fflush(stdin);
scanf("%c", &i);
if(Ƈ'<=i && i<=ƍ')
printf("%s i=%d ",*(p+i-49),i);
//**************************************************************
if(i<Ƈ')
printf("*輸入錯誤!i=%d ",i);
//***********************************************************
if(i>ƍ' && i!='a')
printf("**輸入錯誤! ");
if(i=='a')
{
printf("程序結束了 ");
return;
}
goto _start;
}
10是換行字元'
'的ascii碼。用scanf讀取字元的時候,敲的回車回遺留在緩存里,下次再調用scanf讀取字元時,會把這個'
'讀出來,就不會再要求鍵盤輸入了。
另外,每次輸出後,又遞歸調用,這樣隨著輸入次數的增加,遞歸會越來越深,很容易導致棧溢出。