赞
踩
/*
问题描述:1只公鸡5钱,1只母鸡3钱,3只小鸡1钱,现有100钱要买100只鸡,改怎么买?
问题分析:设买公鸡cock只,母鸡Hen只,小鸡chicken只
列出如下不定方程:
cock+hen+chicken=100
5cock+3hen+chicken/3=100
解决方法:实质是解不定方程,使用穷举法
*/
#include <stdio.h> int main() { int cock, hen, chicken; for (cock = 0; cock <= 20; cock++) { for (hen = 0; hen <= 33; hen++) { for (chicken = 0; chicken <= 100; chicken++) { if ((5 * cock + 3 * hen + chicken/3.0 == 100)&&(cock + hen + chicken == 100)) printf("公鸡%d只,母鸡%d只,小鸡%d只\n", cock, hen, chicken); } } } }
/*
问题描述:有5本书,A\B\C三人分别拿一本,请问共有几种方案?
问题分析:排列组合问题
解决方法:穷举法、多重循环
*/
#include <stdio.h> int main() { int a, b, c, i = 0;//a,b,c分别表示A,B,C借阅的图书编号,i表示有效借阅次数 for (a = 1; a <= 5; a++) { for (b = 1; b <= 5; b++) { for (c = 1; c <= 5; c++) { if (a != b && b != c && a != c) { i++; printf("A:%d, B:%d, C:%d\n", a, b, c); } } } } printf("共有%d种方案\n", i); return 0; }
/*
问题描述:肇事逃逸,有3个目击证人,
甲:牌照前两位数字相同;
乙:牌照后两位相同,但与前两位不同;
丙:四位车号刚好是一个整数的平方。
求牌照号
问题分析:求一个四位数,解不定方程组
算法设计:穷举法
*/
#include <stdio.h> #include <math.h> int main() { int a=0, b=0; //a:前两位,b:后两位 for (a = 0; a < 9; a++) { for (b = 0; b < 9; b++) { int c = a * 1000 + a * 100 + b * 10 + b; if (a != b && sqrt(c)==(int)sqrt(c)) { printf("牌照为%d\n", c); } } } return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。